auto Keyword
The latest version of this topic can be found at auto Keyword.
The 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, theauto
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
keyword.
Syntax
auto declarator ;
auto declarator initializer;
Remarks
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
auto
keyword.(NOTINBUILD)auto Keyword (Storage-Class Specifier) describes the original definition of the
auto
keyword./Zc:auto (Deduce Variable Type) describes the compiler option that tells the compiler which definition of the
auto
keyword to use.