complex declarations mit referenzen
-
Ich weiss, wie complex declarations zu interpretieren sind, die * [] () enthalten. Aber was ist mit Referenzen?
Wie entschluessele ich eine complex declaration, die neben den ueblichen Zeigersternchen, Arrayklammern und Funktionsklammern auch noch Referenzen enthaelt?
Was fuer eine precedence haben Referenzen in solchen Deklarationen?
-
Afaik steht die Referenz auf der selben Stufe wie das Pointer-Sternchen (aber mit den Details bin ich überfragt).
-
Ja, soweit war ich auch.
IMHO verwunderlich ist, dass alle moeglichen Tutorials zu 'complex declarations' die token * [] () wunderbar behandeln und auch erklaeren, aber ich habe nicht ein einziges gefunden, dass zusaetzlich auch das & token behandelt.
Ich meine zu erinnern, dass bei Deklarationen die Operatoren den gleichen Vorrang, wie auch in Ausdruecken haben. Kann das jemand bestaetigen?
-
Ja, die Operatoren haben die gleiche Priorität (bei Deklarationen und Ausdrücken).
[] und () sind auf der zweithöchsten Priorität (:: hat die höchste) und werden von links nach rechts ausgewertet (wie die meisten anderen Operatoren auch).
Aber & und * (und die anderen unären Operatoren) stehen auf einer Stufe darunter und werden von rechts nach links ausgewertet.Am besten also beim Mischen von z.B. & und [] die Klammern () benutzen, dann findet man auch selber wieder durch...