Поделиться через


Ошибка компилятора C3533

"тип": параметр не может быть типом, содержащим ключевое слово "auto"

Метод или параметр шаблона нельзя объявлять с помощью ключевого слова auto, если применяется заданный по умолчанию параметр компилятора /Zc:auto.

Чтобы исправить эту ошибку

  • Удалите ключевое слово auto из объявления параметра.

Пример

Следующий пример вызывает ошибку C3535, так как он объявляет параметр функции с помощью ключевого слова auto, а компилирование выполняется с параметром /Zc:auto.

// C3533a.cpp
// Compile with /Zc:auto
void f(auto j){} // C3533

Следующий пример вызывает ошибку C3535, так как он объявляет параметр шаблона с помощью ключевого слова auto, а компилирование выполняется с параметром /Zc:auto.

// C3533b.cpp
// Compile with /Zc:auto
template<auto T> class C{}; // C3533

См. также

Ссылки

автоматическое ключевое слово

/Zc:auto (выведение типа переменной)