Vlastnosti C/C++ (Linux C++)
Podpora Linuxu je dostupná v sadě Visual Studio 2017 a novějších verzích.
OBECNÉ
Vlastnost | Popis | Volby |
---|---|---|
Další adresáře zahrnutí | Určuje jeden nebo více adresářů, které se mají přidat do cesty zahrnutí. K oddělení více adresářů použijte středníky. (-I[path]). | |
Formát informací o ladění | Určuje typ informací o ladění generovaných kompilátorem. | Žádné – nevygeneruje žádné informace o ladění, takže kompilace může být rychlejší. Minimální informace o ladění – Generování minimálních informací o ladění Úplné informace o ladění (TRPASLÍK2) – vygeneruje informace o ladění VYGENEROVÁNÍ2. |
Název souboru objektu | Určuje název, který má přepsat výchozí název souboru objektu. Může to být název souboru nebo adresáře. (-o [name]). | |
Úroveň upozornění | Vybere, jak striktní má kompilátor být o chybách kódu. Přidejte další příznaky přímo do dalších možností. (/w, /Weverything). | Vypnout všechna upozornění – Zakáže všechna upozornění kompilátoru. EnableAllWarnings – Povolí všechna upozornění, včetně těch, které jsou ve výchozím nastavení zakázané. |
Zacházení s upozorněními jako s chybami | Zpracovává všechna upozornění kompilátoru jako chyby. Pro nový projekt může být nejlepší použít /Werror ve všech kompilacích. Vyřešte všechna upozornění, abyste zajistili co nejmenší možné chyby kódu. | |
Další upozornění jazyka C | Definuje sadu dalších zpráv upozornění. | |
Další upozornění jazyka C++ | Definuje sadu dalších zpráv upozornění. | |
Povolení podrobného režimu | Pokud je povolený podrobný režim, vytiskne další informace pro diagnostiku sestavení. | |
Kompilátor jazyka C | Určuje program, který se má vyvolat při kompilaci zdrojových souborů jazyka C, nebo cestu ke kompilátoru jazyka C ve vzdáleném systému. | |
Kompilátor C++ | Určuje program, který se má vyvolat během kompilace zdrojových souborů C++ nebo cesta ke kompilátoru C++ ve vzdáleném systému. | |
Časový limit kompilace | Časový limit vzdálené kompilace v milisekundách | |
Kopírování souborů objektů | Určuje, zda se mají zkompilované soubory objektů kopírovat ze vzdáleného systému do místního počítače. | |
Maximální počet paralelních úloh kompilace | Početprocesůch Výchozí hodnota je 1. Pokud používáte Subsystém Windows pro Linux (WSL) verze 1, je limit 64. | |
Ověření architektury | Určete, jestli se má zkontrolovat, jestli platforma cílí na projekt, odpovídá vzdálenému systému. | |
Povolení sanitizátoru adres | Zkompilujte program pomocí nástroje Address Sanitizer, což je rychlý detektor chyb paměti, který dokáže najít problémy s pamětí za běhu, jako je použití po uvolnění, a provádět kontroly mimo hranice. |
Optimalizace
Vlastnost | Popis | Volby |
---|---|---|
Optimalizace | Určuje úroveň optimalizace pro aplikaci. | Vlastní – vlastní optimalizace Zakázáno – Zakažte optimalizaci. Minimalizovat velikost – optimalizujte velikost. Maximalizace rychlosti – optimalizace pro rychlost Úplná optimalizace – nákladné optimalizace |
Striktní aliasing | Předpokládá nejtěsnější pravidla aliasingu. Objekt jednoho typu se nikdy nepředpokládá, že má stejnou adresu jako objekt jiného typu. | |
Zrušení registrace smyček | Zruší registraci smyček, aby se aplikace zrychlila snížením počtu spuštěných větví za cenu větší velikosti kódu. | |
Optimalizace času propojení | Umožňuje inter procedurální optimalizace tím, že optimalizátoru umožní hledat v souborech objektů ve vaší aplikaci. | |
Vynechat ukazatel rámce | Zakazuje vytváření ukazatelů na rámce v zásobníku volání. | |
Žádné společné bloky | Přiděluje dokonce i neinicializované globální proměnné v datové části souboru objektu, nikoli je generovat jako běžné bloky. |
Preprocesor
Vlastnost | Popis |
---|---|
Definice preprocesoru | Definuje symboly předběžného zpracování zdrojového souboru. (-D) |
Definice nedefinovaných preprocesorů | Určuje jeden nebo více nedefinů preprocesoru. (-U [makro]) |
Nedefinovat všechny definice preprocesoru | Nedefinuje všechny dříve definované hodnoty preprocesoru. (-undef) |
Zobrazit zahrnutí | Vygeneruje seznam souborů zahrnutí s výstupem kompilátoru. (-H) |
Vytvoření kódu
Vlastnost | Popis | Volby |
---|---|---|
Nezávislý kód pozice | Generuje kód nezávislý na pozici (PIC) pro použití ve sdílené knihovně. | |
Statické metody jsou bezpečné pro přístup z více vláken. | Generuje další kód pro použití rutin zadaných v jazyce C++ ABI pro inicializaci místních statických objektů bezpečných pro přístup z více vláken. | Ne – Zakažte statické funkce bezpečné pro přístup z více vláken. Ano – Povolte statické funkce bezpečné pro přístup z více vláken. |
Optimalizace s plovoucí desetinou čárkou | Umožňuje optimalizaci s plovoucí desetinou čárkou uvolněním shody IEEE-754. | |
Skryté vložené metody | Pokud je tato možnost povolená, jsou deklarovány private extern zastaralé kopie vložených metod . |
|
Symboly skryté ve výchozím nastavení | Všechny symboly jsou deklarovány private extern , pokud nejsou explicitně označené pro export pomocí __attribute makra. |
|
Povolení výjimek C++ | Určuje model zpracování výjimek používaný kompilátorem. | Ne – Zakažte zpracování výjimek. Ano – Povolte zpracování výjimek. |
Jazyk
Vlastnost | Popis | Volby |
---|---|---|
Povolení informací o typu runtime | Přidá kód pro kontrolu typů objektů C++ za běhu (informace o typu modulu runtime). (frtti, fno-rtti) | |
Standard jazyka C | Určuje jazykový standard jazyka C. | Výchozí C89 – Standard jazyka C89. C99 – Standard jazyka C99. C11 – Standard jazyka C11. C99 (GNU Dialekt) – standard jazyka C99 (dialekt GNU). C11 (gnu dialekt) – standard jazyka C11 (gnu dialekt). |
Standard jazyka C++ | Určuje jazykový standard jazyka C++. | Výchozí C++03 – Standard jazyka C++03 C++11 – C++11 Language Standard. C++14 – Standard jazyka C++14 C++03 (GNU Dialekt) – Standard jazyka C++03 (GNU Dialekt). C++11 (GNU Dialekt) – Standard jazyka C++11 (GNU Dialekt). C++14 (Dialekt GNU) – Standard jazyka C++14 (GNU Dialekt). |
Rozšířené
Vlastnost | Popis | Volby |
---|---|---|
Zkompilovat jako | Vybere možnost jazyka kompilace pro soubory .c a .cpp. (-x c, -x c++) | Výchozí – Zjistí na základě přípony .c nebo .cpp. Zkompilovat jako kód jazyka C – zkompilujte jako kód jazyka C. Zkompilovat jako kód C++ – zkompilujte ho jako kód C++. |
Vynucené zahrnutí souborů | Určuje jeden nebo více vynucených souborů zahrnutí (-include [name]) |