The latest version of this topic can be found at auto Keyword.
auto keyword is a declaration specifier. However, the C++ standard defines an original and a revised meaning for this keyword. Before Visual C++ 2010, the
auto keyword declares a variable in the automatic storage class; that is, a variable that has a local lifetime. Starting with Visual C++ 2010, the
auto keyword declares a variable whose type is deduced from the initialization expression in its declaration. The /Zc:auto[-] compiler option controls the meaning of the
auto declarator ; auto declarator initializer;
The definition of the
auto keyword changes in the C++ programming language, but not in the C programming language.
The following topics describe the
auto keyword and the corresponding compiler option:
auto describes the new definition of the
(NOTINBUILD)auto Keyword (Storage-Class Specifier) describes the original definition of the
/Zc:auto (Deduce Variable Type) describes the compiler option that tells the compiler which definition of the
autokeyword to use.