2016-05-12 7 views
0

Dies ist, wie VS2015 Einzüge Code (mit "Document Format"):Fix Einzug von if-else in VS2015

void actual() 
{ 
    int i = 0; 
    if (i == 1) 
     Text = "a"; 
    else 
if (i == 0) 
     Text = "b"; 
    else 
     Text = "c"; 
} 

Gibt es eine Möglichkeit, es zu beheben if und else Aussagen mit der gleichen Vertiefung haben entsprechenden , und eingerückt mehr als die vorherige Einrückung ohne Klammern hinzufügen?

EDIT

Ich würde erwarten, dass es wie in früheren Versionen (VS 2010 und 2013) sein:

void expected() 
{ 
    int i = 0; 
    if (i == 1) 
     Text = "a"; 
    else 
     if (i == 0) 
      Text = "b"; 
     else 
      Text = "c"; 
} 
+4

Ja, schreiben Sie 'sonst if' richtig auf einer Linie. – Chris

+1

@Chris Neben der Tatsache, dass das das Problem nicht löst (überprüfen und sehen) - Ich habe nicht gefragt, wie Sie es in Ihrem "richtigen" Stil formatieren. Jedem sein eigenes. – ispiro

+0

Ich stimme zu, jedem sein eigenes. Ich habe noch nie jemanden gesehen, der es so schreibt. – Chris

Antwort

1

Sie haben einen if mit 3 Zweigen, die Sie versuchen, als zu behandeln 2 Zweig if mit einem anderen if drin. Dies scheint kein Formatierungsproblem zu sein, sondern ein Problem bei der Interpretation der Funktionsweise der Zweige.

Wenn Sie wirklich als 2 separate if s wollen, dann würden Sie haben es auf diese Weise schreiben:

void expected() 
{ 
    int i = 0; 
    if (i == 1) 
     Text = "a"; 
    else 
    { 
     if (i == 0) 
      Text = "b"; 
     else 
      Text = "c"; 
    } 
} 
+1

Ich verstehe, wie sie funktionieren. Und ja, ich will es wie in deinem Code. Aber ich möchte das ohne Klammern tun, wie es in früheren Versionen von VS möglich war. – ispiro

+1

Ich würde tatsächlich die Formatierung von der früheren Version von Visual Studio als einen Fehler betrachten. Ich habe gerade die C# -Formatierungseinstellungen durchgesehen und sehe keine Möglichkeit, das vorherige Verhalten wiederherzustellen. Da * kann * ein Plugin da draußen sein, das den Code so formatieren kann, wie Sie wollen, aber ich weiß nichts davon. –

+0

Sie müssen es nicht so schreiben. Semantisch ist dies gleichbedeutend mit einer "else if" -Struktur, die die Leute in den Kommentaren oder der Form erwähnen, was das OP will. –