В чем разница между & ldquo; const auto & rdquo; и & ldquo; авто const & rdquo; в диапазоне, основанном на цикле в C ++? [Дубликат]

Вы можете установить скомпилированную версию из http://www.lfd.uci.edu/~gohlke/pythonlibs/

33
задан ThinkingStiff 29 June 2012 в 07:54
поделиться

2 ответа

Квалификатор const применяется к типу к немедленному левому, если нет ничего влево, а затем применяется к типу к немедленному праву. Итак, это одно и то же.

59
ответ дан AJG85 3 September 2018 в 14:39
поделиться

Продуманный пример:

std::vector<char*> test;
const auto a = test[0];
*a = 'c';
a = 0; // does not compile
auto const b = test[1];
*b = 'c';
b = 0; // does not compile

Оба a и b имеют тип char* const. Не думайте, что вы можете просто «вставить» тип вместо ключевого слова auto (здесь: const char* a)! Ключевое слово const будет применяться ко всему типу, который соответствует auto (здесь: char*).

12
ответ дан ネロク 3 September 2018 в 14:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: