/Zc:externC
(Standard-C++- extern "C"
Regeln verwenden)
Die /Zc:externC
Compileroption weist den Compiler an, dem C++-Standard zu entsprechen und konsistente Parameterdeklarationen für funktionen zu erzwingen, die als extern "C"
deklariert werden.
Syntax
/Zc:externC
/Zc:externC-
Hinweise
Die /Zc:externC
Compileroption überprüft die Definitionen von Funktionen, die mithilfe extern "C"
von .
Die /Zc:externC
Option ist ab Visual Studio 2019, Version 16.3, verfügbar. Die Option ist deaktiviert, wenn die /permissive-
Option nicht festgelegt ist. In früheren Versionen von Visual Studio und standardmäßig oder wenn /Zc:externC-
angegeben, ist Visual Studio für übereinstimmende Deklarationen von extern "C"
Funktionen zulässig. Die /permissive-
Option aktiviert /Zc:externC
, sodass sie standardmäßig in Projekten aktiviert ist, die verwendet /std:c++20
werden oder /std:c++latest
. Die /Zc:externC
Option muss nach einer /permissive-
Option in der Befehlszeile erfolgen.
Nicht übereinstimmende extern "C"
Deklarationen können zu Compilerfehlern C2116 und C2733 führen. In C++-Code kann ein Fehler auftreten, wenn Sie eine extern "C"
Funktion mehrmals deklarieren und verschiedene Parametertypen verwenden, auch wenn die Typen dieselben Definitionen aufweisen. Die /Zc:externC-
Option entspannt diese Prüfung und erzeugt diese Fehler nicht.
So legen Sie diese Compileroption in Visual Studio fest
Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).
Klicken Sie auf der Eigenschaftenseite auf Konfigurationseigenschaften>C/C++>Befehlszeile.
Fügen Sie den Bereich "Zusätzliche
/Zc:externC
Optionen" hinzu oder/Zc:externC-
fügen Sie sie hinzu.