Инициализация auto переменных в c++
Как инициализировать переменную типа auto при помощи ввода с клавиатуры ?
Я могу сделать так:
int x;
std::cin >> x
или так:
double y;
std::cin >> y;
Но например я хочу ввести число с клавиатуры и не знаю, буду ли я вводить целое число или дробное. На ум приходит только это:
auto x;
std::cin >> x;
Но так не компилируется.
Ответы (1 шт):
Автор решения: norix
→ Ссылка
auto принимает тип присваиваемого выражения, который должен быть очевиден компилятору ещё до исполнения.
В вашем примере auto вообще не инициализируется никаким выражением, оно просто объявляется, а далее просто идут инструкции cin, поэтому компилятор не знает какой тип туда определить.
В данном случае, тип ввода нужно будет определить вручную, динамически, т.к. вы заранее не знаете какой будет ввод.