Unterschied zwischen "int&" und "int &" ?
-
Danke dir.
Das habe ich mir schon fast gedacht. Es macht für mich den Eindruck das die eine Variante neu eingeführt wurde, die andere aber weiterhin unterstützt wird.
So in etwa!
-
Noe, es macht schlicht keinen Unterschied, wo du das '&' nun hinschreibst. Kannst
auchint & i;
schreiben, wenn du magst. Selbiges gilt fuer Zeiger.
mfg
v R
-
Es kann aber für Anfänger verwirrend sein, wenn man schreibt:
int* a,b;
Denn nur a ist dabei ein Zeiger auf int. Damit auch b ein Zeiger auf int ist muss zwischen das Komma und das b auch noch ein * geschrieben werden.
-
du kannst auch folgendes machen:
int & vari;
-
C++ interessiert sich meistens recht wenig für leerzeichen, Tabulatoren und Zeilenumbrüche.
int&foo; int& bar; int &baz; int & qux; int & sonstwas; int & nochwas;
alles das selbe.
-
außer man hat den weißraum operator überladen..
cu
-
Okay .... ich Glaube gleich habe ich es verstanden!! :p
-
Auch, wenn es schon klar ist:
Wie nillable schon geschrieben hat.
int* a, b; // ist gleich mit int* a; int b; //daher ist es eigentlich besser zu lesen (denke ich), wenn man es so schreibt: int *a, *b, c;
so weiß man sofort, dass a und b zeiger sind, c aber nicht. Selbes für Referenzen.
-
mantiz schrieb:
Auch, wenn es schon klar ist:
Wie nillable schon geschrieben hat.
int* a, b; // ist gleich mit int* a; int b; //daher ist es eigentlich besser zu lesen (denke ich), wenn man es so schreibt: int *a, *b, c;
so weiß man sofort, dass a und b zeiger sind, c aber nicht. Selbes für Referenzen.
noch viel besser ist es
int * a; int * b; int c;
zu verwenden und zeiger und nicht zeiger überhauptnicht miteinander zu mischen.
-
mantiz schrieb:
//daher ist es eigentlich besser zu lesen (denke ich), wenn man es so schreibt: int *a, *b, c;
Geschmackssache. Ich halte davon zB überhaupt nichts. Erstmal hat ein Typ-Spezifikator beim Namen nichts zu suchen. Und zweitens, wie Helium schon schrieb, solltest du Variablen verschiedenen Types bei der Deklaration auch logisch voneinander trennen.