News:

Accounts with zero posts and zero activity during the last months will be deleted periodically to fight SPAM!

Main Menu

Why the brackets in case in defaultcode?

Started by jmb, July 28, 2015, 09:34:58 PM

Previous topic - Next topic

jmb

Hi

I wonder, why the switch in the "win32  GUI projct"-Template looks like this:


   switch(uMsg)
    {
    case WM_INITDIALOG:
    {
         // Code
    }
    return TRUE;
    }
    return FALSE;


And so this indentation is a bit confusing.

It should rather look like this:



   switch(uMsg)
    {
          case WM_INITDIALOG:
              // Code
             return TRUE;
    }

    return FALSE;




Is there a reason for that format ?



Linux Mint, Cinnamon 19.3 , Code::Blocks 20.03

oBFusCATed

It is a template, not a mandatory thing.
You can change it however you like.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

jmb

Thx for answering. I just saw such "syntax" the first time and was
a bit astounded.

Linux Mint, Cinnamon 19.3 , Code::Blocks 20.03

BlueHazzard

normally you use the brackets in the case for scope separation...
So you can use variable i in case 0 and case 1...
see the example:


switch(cnt)
{
   case 1:
   {
        int tmp = 22;
   }
   break;
   case 2:
   {
        int tmp = 33;
   }
   break;
}


without brackets you would get the redefinition error...

greetings

jmb

Thank you, for opening my eyes. Usually I don't declare variables in case-segments, so I didn't
had this idea and was blind  ;D


Linux Mint, Cinnamon 19.3 , Code::Blocks 20.03