Omezení kompilátoru
Standard jazyka C++ doporučuje limity pro různé jazykové konstrukce.Následuje seznam případů, kdy kompilátor Visual C++ neimplementuje doporučená omezení.První číslo je limit, který je obsažen v ISO C++ 11 standardní (INCITS/ISO/IEC 14882-2011 [2012], přílohy B) a druhé číslo je limit implementované Visual C++:
Úroveň vnoření složené příkazy, iterace ovládací prvek struktury a struktury ovládacího prvku výběru [C++ standard: 256] (kompilátor Visual C++: závisí na kombinaci příkazy, které jsou vnořené, ale obecně mezi 100 a 110).
Parametry v definici jednoho makra [C++ standard: 256] (kompilátor Visual C++: 127).
Argumenty v jedné macro volání [C++ standard: 256] (kompilátor Visual C++ 127).
Znaky v znak řetězcový literál nebo široké řetězcový literál (po zřetězení) [C++ standard: 65536] (kompilátor Visual C++: 65535 znaků jednoho bajtu, včetně null ukončení a 32767 dvoubajtové znaky, včetně null ukončení).
Úrovně vnořené třídy, struktury nebo union definice v jednom struct-declaration-list [C++ standard: 256] (kompilátor Visual C++: 16).
Inicializátory člena v definici konstruktor [C++ standard: 6144] (kompilátor Visual C++: alespoň 6144).
Určení rozsahu kvalifikaci jeden identifikátor [C++ standard: 256] (kompilátor Visual C++: 127).
Vnořené extern specifikace [C++ standard: 1024] (kompilátor Visual C++: 9 (není počítání implicitní extern specifikace v globálním oboru nebo 10, pokud je počet implicitní extern specifikace v globálním oboru.).
Šablony argumentů v deklaraci šablony [C++ standard: 1024] (kompilátor Visual C++: 2046).