C++ Reference Variable Declaration Syntax Reasoning -


all other declaration syntaxes in c++ make lot of sense, examples:

int i; 

i int

int *i; 

when i dereferenced, result int

int i[]; 

when i subscripted, result , int

int *i[]; 

when i subscriped, result derefrenced, final result int

but when @ syntax reference variables, otherwise consistent reasoning falls apart.

int &i = x; 

“when address of i taken, result int” makes no sense.

am missing something, or exception apparent reasoning behind other sytaxes? if exception, why syntax chosen?

edit:

this question addresses why & symbol may have been chosen purpose, not whether or not there universally consistent way read declarations different way described above.

once bound, reference becomes alias referent, , cannot distinguished (except decltype). since int& used int is, declaration-follows-usage syntax not work declaring references.

the syntax declaring references pretty straightforward, still. write down declaration corresponding pointer type, replace * used initial dereference & or &&.


Comments

Popular posts from this blog

PHP DOM loadHTML() method unusual warning -

python - How to create jsonb index using GIN on SQLAlchemy? -

c# - TransactionScope not rolling back although no complete() is called -