Sdílet prostřednictvím


Vlastnosti C/C++ (Linux C++)

Podpora Linuxu je dostupná v sadě Visual Studio 2017 a novějších verzích.

Obecné

Vlastnost Popis Možnosti
Další adresáře pro Include 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í – Generovat minimální informace o ladění
Úplné informace o ladění (DWARF2) – generuje ladicí informace DWARF2.
Název souboru objektu Určuje název, který přepíše výchozí název souboru s objektem. 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 nejméně těžko odhalitelných problémů v kódu.
Další varování v 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, zobrazí podrobnější 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čet procesů, které se vytvářejí paralelně během kompilace. 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, zda má být zkontrolováno, zda platforma, na kterou projekt cílí, 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 překročení paměťových hranic.

Optimalizace

Vlastnost Popis Možnosti
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.
Rozvinutí smyček Rozvine smyčky, aby se aplikace zrychlila snížením počtu provedených větví, na úkor 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)
Odstranit definice preprocesoru 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 Možnosti
Kód nezávislý na pozici 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 statiky 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í čárkou Umožňuje optimalizaci s pohyblivou řádovou čárkou uvolněním požadavků shody IEEE-754.
Skryté vložené metody Pokud je tato možnost povolena, jsou deklarovány private extern mimořádkové 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 Možnosti
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 Možnosti
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.
Zkompilujte jako kód C++ – Zkompilujte jako C++ kód.
Vynucené zahrnutí souborů Určuje jeden nebo více povinně zahrnutých include souborů (-include [name])