Я знаю тему передачи по ссылке vs ... переход по указателю сильно покрыт ... Уверен, я понял все нюансы, пока не прочитал это:
http://carlo17.home.xs4all.nl/cpp/const.qualifier.html
, в котором читается ( на случай, если ссылка не работает)
The prototype for foobar can have any of the following footprints:
void foobar(TYPE); // Pass by value
void foobar(TYPE&); // Pass by reference
void foobar(TYPE const&); // Pass by const reference
Note that I put the const to the right of TYPE because we don't know if TYPE (this is not a template parameter, but rather for instance a literal char*) is a pointer or not!
что автор имел в виду, говоря «Обратите внимание, что я помещаю константу справа от TYPE, потому что мы не знаем, является ли TYPE ... указателем или нет!»
Все Я читал по этой теме и последовательно говорил, что:
void foodbar (TYPE const &)
тоже эквивалентен
void foobar (const TYPE &)
Если я правильно понимаю автора, он / она говорит, что:
const int * X vs int * const X, где указатель, X сам по себе является константой, а то, на что указывает X, является константой?
Если да, то это правда?