Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La "función del lenguaje" requiere la marca del compilador "opción del compilador"
Observaciones
La característica de lenguaje requiere la opción del compilador que se muestra en el mensaje de error.
Para establecer el estándar del lenguaje C++ en Visual Studio:
- Abra el diálogo Páginas de propiedades del proyecto.
- Seleccione Propiedades> de configuraciónC/C++>Language.
- En Estándar de lenguaje C++, seleccione el estándar especificado por el mensaje de error y, a continuación, seleccione Aceptar o Aplicar. Por ejemplo, seleccione ISO C++17 Standard (/std:c++17) cuando el error especifique
/std:c++17.
En el caso de las compilaciones de línea de comandos, agregue la opción especificada al cl comando .
Example
En el ejemplo siguiente se genera la advertencia C2429: la característica de lenguaje "nested-namespace-definition" requiere la marca del compilador '/std:c++17' cuando el compilador usa su estándar de lenguaje C++14 predeterminado. Las definiciones de espacios de nombres anidados requieren C++17 o una versión posterior. Para corregir el error, compile con la /std:c++17 opción o posterior, o defina cada espacio de nombres por separado.
// C2429.cpp
namespace a::b { int i; } // C2429 when the compiler uses C++14.
// Use /std:c++17 or later, or define each namespace as follows:
// namespace a { namespace b { int i; }}
int main() {
a::b::i = 2;
}