Extra geschweifte Klammern in C ++ - Code

anchmal stößt man auf Code mit zusätzlichen geschweiften Klammern, die nichts mit dem Gültigkeitsbereich zu tun haben, sondern nur der Lesbarkeit und der Vermeidung von Fehlern diene

Beispielsweise

GetMutexLock( handle ) ; 
{
  // brace brackets "scope" the lock,
  // must close block / remember
  // to release the handle.
  // similar to C#'s lock construct
}
ReleaseMutexLock( handle ) ;

Andere Orte, die ich gesehen habe, sind:

glBegin( GL_TRIANGLES ) ;
{
  glVertex3d( .. ) ;
  glVertex3d( .. ) ;
  glVertex3d( .. ) ;
} // must remember to glEnd!
glEnd() ; 

Dies führt zu einem Compilerfehler, wenn der Mutex nicht freigegeben ist (vorausgesetzt, Sie erinnern sich an das} und dasRelease() Anruf)

Ist das eine schlechte Praxis? WarumWenn dies nicht der Fall ist, kann dies die Kompilierung des Codes ändern oder ihn verlangsamen?

Antworten auf die Frage(16)

Ihre Antwort auf die Frage