GeeksforGeeks
int const*
int const* er markør til konstant heltal
dette betyder, at variablen, der erklæres, er en markør, der peger på et konstant heltal. Effektivt betyder dette, at markøren peger på en værdi, der ikke bør ændres. Const-kvalifikatoren påvirker ikke markøren i dette scenario, så markøren får lov til at pege på en anden adresse.
det første const-søgeord kan gå på begge sider af datatypen, hvorfor int const* svarer til const int*.
int *const
int *const er en konstant markør til heltal
dette betyder, at variablen, der erklæres, er en konstant markør, der peger på et heltal. Effektivt betyder dette, at markøren ikke skal pege på en anden adresse. Const-kvalifikator påvirker ikke værdien af heltal i dette scenario, så den værdi, der gemmes i adressen, får lov til at ændre sig.
const int* const
const int* const er en konstant markør til konstant heltal
dette betyder, at variablen, der erklæres, er en konstant markør, der peger på et konstant heltal. Effektivt indebærer dette, at en konstant markør peger på en konstant værdi. Derfor bør hverken markøren pege på en ny adresse eller den værdi, der peges på, ændres.
det første const-søgeord kan gå på begge sider af datatypen, hvorfor const int* const svarer til int const* const.
hukommelseskort
en måde at huske syntaksen på (ifølge Bjarne Stroustrup) er spiralreglen-
reglen siger, start fra navnet på variablen og flyt med uret til den næste markør eller type. Gentag, indtil udtrykket slutter.
reglen kan også ses som afkodning af syntaksen fra højre til venstre.
derfor,
- int const * er pointer til const int
- int * const er const pointer til int
- int const* const er const pointer til const int
ved hjælp af denne regel kan selv komplekse erklæringer afkodes som,
- int * * const er en const pointer til pointer til en int.
- int * const * er en pointer til const pointer til en int.
- int const ** er en pointer til en pointer til en const int.
- int * const * const er en const pointer til en const pointer til en int.
opmærksomhed læser! Stop ikke med at lære nu. Få fat i alle de vigtige C++ Foundation og STL koncepter med C++ Foundation og STL kurser på en studerende-venlig pris og blive industri klar.