bezüglich C
Klammern werden gesetzt, wo ein Ausdruck ist, und man möchte den Rückgabewert, der Wert des Ausdrucks sein. Auch dann sind Klammern nicht erforderlich. Es ist völlig in Ordnung, so etwas wie
return x + y;
Programmierer schreiben macht es return (x + y);
, um es besser lesbar zu machen.
Also, Putting Klammern ist eine Frage der Meinung und Praxis.
In Bezug auf C++
Es gibt einen Fall, in dem obskuren Angelegenheiten Klammern. Zitiert this Frage
int var1 = 42;
decltype(auto) func1() { return var1; } // return type is int, same as decltype(var1)
decltype(auto) func1() { return(var1); } // return type is int&, same as decltype((var1))
Sie können die zurückgegebenen Werte sehen verschieden sind, und das ist aufgrund der runden Klammern. Sie können durch this Antwort gehen, um im Detail zu verstehen.
In Bezug auf Java macht Klammern keinen Unterschied.
Codierung Konvention schlägt mit
return x + y;
zu gehen, um mehr zu verstehen, lesen Sie this Antwort.
HINWEIS: Ich weiß nicht viel über Java und C++. Der gesamte Inhalt meiner Antwort zu Java und C++ ist aus anderen Antworten entnommen. Ich habe dies getan, um die verschiedenen Konventionen für die drei Sprachen zu konsolidieren.
'return' ist eine Anweisung und die _parentheses_ (" Klammern "wird für die' [] 'verwendet) sind nutzlos. Grammatisch sind sie Teil des Ausdrucks, nicht der Aussage. Moderne Codierungsstile raten oft davon ab, sie zu verwenden. – Olaf
@WillBriggs: Nun, es tut grammatikalisch. Das könnte sehr gut für die Code-Analyse relevant sein. – Olaf
Klammern wie diese unterdrücken Konvertierungswarnungen vom Typ des Werts zum Rückgabetyp der Funktion? Ich weiß, dass einige andere Warnungen, wie Zuweisungen in bedingten Anweisungen, mit zusätzlichen Parens unterdrückt werden können. – Sqeaky