Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#26

AW: switch, break, case c++

  Alt 27. Aug 2017, 11:19
Zitat:
Ein Grundsatzhinweis bezgl. der Frage was stimmt beim break vom FullScreen nicht...
Sollte das nicht der Formatierer tun?

Manchmal rückt er das break ein aber manchmal auch nicht.
Hier würde er ihn einrücken.
Code:
   case 'b' :
        // Value of szChEntered undefined.
        cout << szChEntered << "b\n";
        break;
hier aber nicht.
Code:
   case 'b' :
   { 
        // Value of szChEntered undefined.
        cout << szChEntered << "b\n"
   } 
   break;
EDIT:
Habe es mal getestet..
Zitat:
=> Der Sinn von Klammern ist also, das es innerhalb derer möglich ist, neue lokal gültige Variablen zu definieren
=> wenn keine Variablen definiert werden, braucht es beim "Case" oder "Default" keine geschweiften Klammern
In beiden fällen kompiliert es Fehler frei.
Code:
        case ID_FULLSCREEN:
       // {
            RECT rect;
            gP.bFullScreen = !gP.bFullScreen;
            SetForegroundWindow(hWnd);
            if (gP.bFullScreen)
            {
                rect.right = GetSystemMetrics(SM_CXSCREEN);
                rect.bottom = GetSystemMetrics(SM_CYSCREEN);
                SetWindowLongPtr(hWnd, GWL_STYLE, WS_POPUP | WS_VISIBLE);
                AdjustWindowRect(&rect, WS_POPUP, FALSE);
                MoveWindow(hWnd, 0, 0, rect.right, rect.bottom, FALSE);
            }
            else
            {
                rect.right = dpi(XMIN_SIZE);
                rect.bottom = dpi(YMIN_SIZE);
                rect.left = (GetSystemMetrics(SM_CXSCREEN) - rect.right) / 2;
                rect.top = (GetSystemMetrics(SM_CYSCREEN) - rect.bottom) / 2;
                SetWindowLongPtr(hWnd, GWL_STYLE, WS_OVERLAPPEDWINDOW | WS_VISIBLE);
                AdjustWindowRect(&rect, WS_OVERLAPPEDWINDOW, FALSE);
                MoveWindow(hWnd, rect.left, rect.top, dpi(XMIN_SIZE), dpi(YMIN_SIZE), FALSE);
            }
            break;
       // }
Code:
        case ID_FULLSCREEN:
        {
            RECT rect;
            gP.bFullScreen = !gP.bFullScreen;
            SetForegroundWindow(hWnd);
            if (gP.bFullScreen)
            {
                rect.right = GetSystemMetrics(SM_CXSCREEN);
                rect.bottom = GetSystemMetrics(SM_CYSCREEN);
                SetWindowLongPtr(hWnd, GWL_STYLE, WS_POPUP | WS_VISIBLE);
                AdjustWindowRect(&rect, WS_POPUP, FALSE);
                MoveWindow(hWnd, 0, 0, rect.right, rect.bottom, FALSE);
            }
            else
            {
                rect.right = dpi(XMIN_SIZE);
                rect.bottom = dpi(YMIN_SIZE);
                rect.left = (GetSystemMetrics(SM_CXSCREEN) - rect.right) / 2;
                rect.top = (GetSystemMetrics(SM_CYSCREEN) - rect.bottom) / 2;
                SetWindowLongPtr(hWnd, GWL_STYLE, WS_OVERLAPPEDWINDOW | WS_VISIBLE);
                AdjustWindowRect(&rect, WS_OVERLAPPEDWINDOW, FALSE);
                MoveWindow(hWnd, rect.left, rect.top, dpi(XMIN_SIZE), dpi(YMIN_SIZE), FALSE);
            }
        }
        break;
Seltsam.. Es scheint wohl keine Richtlinien zu geben.

gruss

Geändert von EWeiss (27. Aug 2017 um 11:34 Uhr)
  Mit Zitat antworten Zitat