Limites do compilador
O padrão do C++ recomenda limites para várias construções de linguagem. A lista a seguir contém casos onde o compilador do Microsoft C++ não implementa os limites recomendados. O primeiro número é o limite estabelecido no padrão ISO C++11 (INCITS/ISO/IEC 14882-2011[2012], Anexo B) e o segundo número é o limite implementado pelo compilador do Microsoft C++:
Níveis de aninhamento de instruções compostas, estruturas de controle de iteração e estruturas de controle de seleção - padrão C++: 256, compilador do Microsoft C++: dependem da combinação de instruções que são aninhadas, mas geralmente entre 100 e 110.
Parâmetros em uma definição de macro - padrão C++: 256, compilador Microsoft C++ usando
/Zc:preprocessor-
:127 ou usando/Zc:preprocessor
:32767.Argumentos em uma invocação de macro - padrão C++: 256, compilador Microsoft C++ usando
/Zc:preprocessor-
:127 ou usando/Zc:preprocessor
:32767.Caracteres em uma cadeia de caracteres literal ou em uma cadeia de caracteres largos literal (depois da concatenação) - padrão C++: 65536, compilador do Microsoft C++: 65535 caracteres de byte único, incluindo o terminador NULL e caracteres de byte duplo 32767, incluindo o terminador NULL.
Níveis de definições de classes, estruturas ou uniões aninhadas em uma única
struct-declaration-list
- padrão C++: 256, compilador do Microsoft C++: 16.Inicializadores de membro em uma definição de construtor - padrão C++: 6144, compilador do Visual C++: pelo menos 6144.
Qualificações do escopo de um identificador - padrão C++: 256, compilador do Visual C++:127.
Especificações aninhadas
extern
- padrão C++: 1024, compilador do Microsoft C++: 9 (não conta a especificação implícitaextern
no escopo global ou 10, caso você conte a especificação implícitaextern
no escopo global).Argumentos do modelo em uma declaração de modelo - padrão C++: 1024, compilador do Microsoft C++:2046.
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de