Я узнал, что объявление переменной с использованием auto таким образом
auto var = expr;
в основном походит на выбор типа expr
и снятие && & -references и всех констант верхнего уровня и летучести от него. Означает ли это, что указанная выше строка в точности эквивалентна следующему?
std::remove_cv<std::remove_ref<decltype(expr)>::type>::type var = expr;