/H (Omezit délku externích názvů)
Omezuje délku externí názvy.
/Hnumber
Arguments
- number
Určuje maximální délku externí názvy, které jsou povoleny v programu.
Poznámky
Ve výchozím nastavení je délka vnější (veřejné) názvy 2,047 znaků.To platí pro programy C a C++.Pomocí /H lze pouze snížit maximální povolená délka identifikátory, nelze zvětšit.Prostor mezi /H a number je nepovinný.
Pokud program obsahuje externí názvy delší než number, zvláštní znaky jsou ignorovány.Pokud při kompilaci aplikace bez /H a pokud identifikátor obsahuje více než 2,047 znaky, kompilátor vygeneruje Závažná chyba C1064.
Omezení délky obsahuje všechny vytvořené kompilátoru úvodní podtržítka (_) nebo znak zavináč (@).Tyto znaky jsou součástí identifikátoru a trvat na významné místo.
Kompilátor přidá změnil názvy vedoucí znak podtržítko (_) __cdecl (výchozí) a __stdcall volání úmluvy a úvodní znak (@) názvy změnil __fastcall konvence volání.
Kompilátor přidá informace velikost argument změnil názvy __fastcall a __stdcall konvence volání a přidá informace o typu C++ názvy.
Je možné /H užitečné:
Při vytváření smíšené jazyk nebo přenosné programy.
Při použití nástroje, které zavádí omezení délky externí identifikátory.
Pokud chcete omezit množství místa, které používají symboly v sestavení ladění.
Následující příklad ukazuje způsob použití /H mohou skutečně vzniknout chyby, jsou-li délky identifikátor omezené příliš:
// compiler_option_H.cpp
// compile with: /H5
// processor: x86
// LNK2005 expected
void func1(void);
void func2(void);
int main() { func1(); }
void func1(void) {}
void func2(void) {}
Také musíte být opatrní při použití /H možnost z předdefinovaných kompilátoru identifikátory.Pokud identifikátor maximální délka je příliš malá, budou některé předdefinované identifikátory nevyřešené stejně jako některé knihovny volání funkce.Například pokud printf je použita funkce a možnost /H5 je určena v době kompilace, symbol _prin bude vytvořen odkázat printf, a nebude nalezen v knihovně.
Použití /H je kompatibilní s /GL (celková optimalizace programu).
/Hse již nepoužívá; omezení maximální délky vzrostly a /H již není potřeba. Další informace naleznete v tématu Deprecated Compiler Options.
Chcete-li nastavit tuto možnost kompilátoru ve vývojovém prostředí Visual Studio
Otevřete dialogové okno projektu Stránky vlastností.Další informace naleznete v tématu Postupy: Otevření stránek vlastností projektu.
Klikněte na složku C/C++.
Klikněte na stránku vlastností Příkazový řádek.
Zadejte možnost kompilátoru v Další možnosti pole.
Chcete-li tuto možnost kompilátoru nastavit v programu
- Další informace naleznete v tématu AdditionalOptions.