Gibt es Namen für `int* p` vs. `int *p`?
-
@wob sagte in Gibt es Namen für `int* p` vs. `int *p`?:
PointerAlignment
Ja, das ist die Eigenschlaft und clang-format verwendet offenbar Left und Right dafür.
-
@Swordfish
Ich will hier nicht darüber diskutieren was besser ist. Es gibt auch eigentlich nur 3 Varianten: left (int* p
), middle (int * p
) und right (int *p
).@wob
Was ich suche sind Namen/Bezeichnungen ala "east const" und "west const", nur halt welche die man stattPAS_Left
/PAS_Middle
/PAS_Right
verwenden kann.Also ich kann in einer Diskussion ganz einfach sagen "ich verwende east const". Oder "east const" als Commit-Kommentar wo reinschreiben wenn ich ein File auf "east const" umstelle. Das ist kurz und knackig. Wer den Begriff nicht kennt kann ihn in 5 Sekunden googeln und findet dann sofort sowas wie https://mariusbancila.ro/blog/2018/11/23/join-the-east-const-revolution/
Natürlich kann ich "pointer alignment left" wo reinschreiben. Aber erstens geht's dabei ja nicht nur um Pointer sondern auch um Referenzen, und zweitens finde ich das irgendwie nicht so ... nett
-
@hustbaer Da wird Dir wohl nichts übrig bleiben als selbst Bezeichnungen einzuführen.
-
Wohl einfach nur die richtige (
int* p
) und die falsche Art es zu schreiben.
-
@eigenartig "Die richtige Art" ist als Bezeichnung einer konkreten Art in Diskussionen nicht sehr hilfreich, wenn sich nicht alle Beteiligten einig darüber sind was "die richtige Art" ist. Nen?
-
@hustbaer dann hab ich nur das Gefühl, dass der Pointer mehr was mit dem Typ zu tun hat als mit dem Namen.
Genau so wie für eine Integer-Konstante möchte ich lieber
const int
, also ein konstanter Integer, statt einem Integer, der konstant ist...
-
@eigenartig sagte in Gibt es Namen für `int* p` vs. `int *p`?:
@hustbaer dann hab ich nur das Gefühl, dass der Pointer mehr was mit dem Typ zu tun hat als mit dem Namen.
Es geht hier um eine Bezeichnung dafür, nicht was besser ist. Aber wenn wir schon dabei sind:
Ich bevorzuge -wie wohl die meisten-int* p
aber das Standard-Gegenargument ist dann
int *p1, p2; vs int* p1, p2;
Und da ist der Erste nunmal wirklich lesbarer. Wobei man sowas auch echt nicht in eine Zeile schreiben sollte.
@hustbaer: sorry fürs stören deines Threads
-
@Jockelx sagte in Gibt es Namen für `int* p` vs. `int *p`?:
int *p1, p2;
Wer das verwenden muss nur um sich zu merken was hier passiert ist selbst Schuld.
Daher mach ich gerne mal ein
int* px, * py;
-
@hustbaer Sorry, daß ich damit angefangen habe
-
@Swordfish mit wem redest du da
-
@eigenartig sagte in Gibt es Namen für
int* p
vs.int *p
?:@Swordfish mit wem redest du da
Mit hustbaer wie es auch in meinem Post steht. Und jetzt lösch' Deinen Post und ich lösch' diese Antwort. Völlig unnötig.
-
Kein Problem, Leute.
Meine Frage ist denke ich beantwortet. Gäbe es gängige Bezeichnungen, hätte das denke ich schon jemand geschrieben.
Was das Thema angeht wo der Stern jetzt hingehört: mMn. ganz klar zum Typ. Das Gegenargument ist mir bekannt, aber mMn. doof weil man mMn. sowieso nie mehr als eine Variable pro Zeile definieren sollte. Also braucht man auch keine Schreibweise die dies eine Spur weniger verwirrend macht.
Und das
const
gehört ganz klar in den Osten.Wenn ich sowas lese wie
int var; int *other_var; double *const array_var;
kommt mir das Kotzen.
int var; int* other_var; double* const array_var;
Erledigt. Danke.
-
-
@hustbaer sagte in Gibt es Namen für
int* p
vsint *p
?:int var; int *other_var; double *const array_var;
natürlich nicht!!
int var; int *other_var; double * const array_var;
-
@Swordfish sagte in Gibt es Namen für `int* p` vs. `int *p`?:
Völlig unnötig.
Macht doch nichts. Wirklich. Alter!
-
@hustbaer sagte in Gibt es Namen für `int* p` vs. `int *p`?:
Was das Thema angeht wo der Stern jetzt hingehört: mMn. ganz klar zum Typ.
Der Typ der Variablen ist schliesslich auch
int*
, egal wo der Stern steht.
int *var
liest sich für mich immer irgendwie als würde dain tvar
stehen
-
@eigenartig
Du hast schon die Eigenart mit völlig sinnfreien Kommentaren zu nerven. Und ja, das macht schon was. In Summe.
Wirklich. Alter!
-
Nicht doch wir sind doch nicht hier um zu streiten im Endeffekt hat jeder seine Meinung zu deiner Frage gegeben.
PS:
const int* p
ist ganz klar ein konstanter Integer.Alter.