Wie es die vielleicht häufigste const Zeiger darauf hingewiesen, bereits hat, ist
const char* p;
Die Variable p ändern kann, aber die Daten p Punkte ist unmodifable .
jedoch links von der Stern das Schlüsselwort const bewegt, ändert nichts an der Bedeutung der Deklaration:
char const* p;
ich später bevorzugen, da es viel leichter merken wird, wo die const Schlüsselwörter zu platzieren, wenn deklarieren von const-Zeigern zu const-Zeigern:
char const* const* p;
Auch hier kann sich die Variable p ändern und die angezeigten Daten sind nicht änderbar. Darüber hinaus werden die Daten als const pointer deklariert, was bedeutet, dass sie auf Daten zeigen, die nicht geändert werden können.
Die üblichere Schreibweise für diese Art ist
const char* const* p;
das Schlüsselwort const Platzierung unmittelbar links von dem Sternchen es (oder kaufmännische Und als Referenz) modifiziert macht es einfach, komplexen Typen Einbeziehung das const Schlüsselwort zu erstellen. Zum Beispiel kann ein Zeiger auf const Zeiger:
char const** p;
und ein const Zeiger auf Zeiger:
char* const* p;
Denken Sie daran, Zeiger Erklärungen von rechts nach links „lesen“, und nicht erklären, mehr als ein Zeiger in jeder Anweisung, um eine Menge Verwirrung zu vermeiden.
Dieser Beitrag ist verwirrend und unterscheidet nicht eindeutig zwischen dem Wert const und dem Zeiger const. –
Es braucht mehr als nur einen Beitrag zu lesen, um den Begriff überhaupt zu verstehen. –
Sie können die Verkehrsregeln nicht nur beim Fahren lernen. Sie werden nicht lernen, ohne Programmierung zu programmieren, und Sie werden nicht lernen, was legal und zuverlässig ist, ohne Bücher zu lesen. –