Automatische Codeformatierung bei VS 08



  • Hallo Leute,

    beim Visual Studio 08 stört mich hin und wieder die automatische Codeformatierung (speziell bei switch-Konstrukten).
    Aus dem meiner Ansicht nach schön formatiertem Code

    void f()
    {
    	switch(bar())
    	{
    		case 1:
    		{
    			int k = g();
    			break;
    		}
    	}
    }
    

    wird

    void f()
    	{
    		switch(bar())
    		{
    		case 1:
    			{
    				int k = g();
    				break;
    			}
    		}
    	}
    

    Kann man das irgendwie anpassen?



  • Extras -> Optionen -> (Linkes Panel) Texteditor -> (Linkes Panel) C/C++ -> (Linkes Panel) Formatierung

    oder unvermutet

    http://msdn.microsoft.com/de-de/library/0x6hx0kx.aspx

    Viel Spaß



  • Danke erstmal für die Antwort.

    Die entsprechende Checkbox habe ich auch gesehen (ja, es ist im VS 08 nur eine: Indentation: indent braces), nur leider hilft mir das bei der misslungenen Formatierung von switch-Konstrukten nicht weiter.



  • Nein! Das kann man IMHO nicht anpassen.
    Allerdings halte ich das erneute einrücken in switch Anweisungen nicht für "schön". Ich würde es wie ein if/if else/else auf einer Ebene sehen.
    Zudem wäre mir der Code mit zwei Tabstopps auch zu weit eingerückt....



  • Wozu die ollen Klammern bei jedem Case?

    Switch ist eben hässlich aber zum Glück fast immer unnötig.



  • case und break: bildet doch schon einen Block. Ich lasse da auch immer die Klammern weg. Und alles was eh länger wird, lagere ich (und du hoffentlich auch) eh in eine eigene Funktion aus.



  • Martin Richter schrieb:

    Nein! Das kann man IMHO nicht anpassen.

    Das habe ich befürchtet - ich muss WinApi-Code (viel switch) warten, bei dem die Einrückung jeweils aus zwei Leerzeichen besteht - einfach hässlich.

    hurrdurr schrieb:

    Wozu die ollen Klammern bei jedem Case?

    Das war ja nur in dem Beispiel, generell mache ich es natürlich nicht, Klammersetzung nur, wenn durch Variablendeklarationen innerhalb des case-Zweiges ein neuer Scope notwendig ist.

    Artchi schrieb:

    Und alles was eh länger wird, lagere ich (und du hoffentlich auch) eh in eine eigene Funktion aus.

    Klar.

    Aber Danke für die Antworten.


Anmelden zum Antworten