Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Možnost /Zc:externConstexpr kompilátoru říká kompilátoru, aby odpovídal standardu C++ a povolil externí propojení proměnných constexpr . Visual Studio ve výchozím nastavení vždy poskytuje proměnnou constexpr interní propojení, i když zadáte extern klíčové slovo.
Syntaxe
/Zc:externConstexpr[-]
Poznámky
Možnost /Zc:externConstexpr kompilátoru způsobí, že kompilátor použije externí propojení na proměnné deklarované pomocí extern constexpr.
Ve starších verzích sady Visual Studio ve výchozím nastavení nebo pokud /Zc:externConstexpr- je zadáno, sada Visual Studio použije interní propojení s constexpr proměnnými i v případě použití klíčového extern slova. Tato /Zc:externConstexpr možnost je dostupná od verze Visual Studio 2017 Update 15.6. a je ve výchozím nastavení vypnutý.
Od verze Visual Studio 2022 Update 17.6 tato /permissive- možnost povolí obojí /Zc:externConstexpr i /Zc:lambda. V předchozích verzích /permissive- ani jeden nepovolil.
Pokud soubor hlavičky obsahuje deklarovanou extern constexprproměnnou, musí být označen, __declspec(selectany) aby bylo možné sloučit duplicitní deklarace do jedné instance v propojeném binárním souboru. V opačném případě se můžou zobrazit chyby linkeru, například LNK2005 porušení pravidla jedné definice.
Nastavení této možnosti kompilátoru v sadě Visual Studio
Otevřete dialogové okno Stránky vlastností projektu. Podrobnosti najdete v tématu Nastavení kompilátoru C++ a vlastností sestavení v sadě Visual Studio.
Vyberte stránku vlastností příkazového řádku C/C++>Vlastnosti>konfigurace.
Přidejte
/Zc:externConstexprnebo/Zc:externConstexpr-do podokna Další možnosti: