C/C++-egenskapssidor

Följande egenskapssidor finns underKonfigurationsegenskaper för>projektegenskaper>>C/C++:

Allmänna egenskaper för C/C++

Ytterligare inkludera kataloger

Anger en eller flera kataloger som ska läggas till i inkluderingssökvägen. Avgränsa kataloger med semikolon ('';) om det finns fler än en. Ställer in kompilatoralternativet /I (Ytterligare inkluderingskataloger)

Ytterligare #using kataloger

Specificerar en eller flera kataloger att söka igenom för att matcha namn som skickas till ett #using direktiv. Avgränsa kataloger med semikolon ('';) om det finns fler än en. Anger kompilatoralternativet /AI .

Ytterligare BMI-kataloger

Anger en eller flera kataloger för sökning för att matcha namn som skickas till ett import direktiv. Avgränsa kataloger med semikolon ('';) om det finns fler än en. Anger kompilatoralternativet /ifcSearchDir[path] .

Ytterligare modulberoenden

Anger en eller flera moduler som ska användas för att matcha namn som skickas till ett import direktiv. Avgränsa kataloger med semikolon ('';) om det finns fler än en. Anger det kompilatoralternativet /reference.

Ytterligare beroenden för rubrikenhet

Anger en eller flera huvudenheter som ska användas för att lösa namn som skickas till ett import huvuddirektiv. Avgränsa kataloger med semikolon ('';) om det finns fler än en. Anger ett alternativ på kompilatorn /headerUnit.

Sök igenom källor efter modulberoenden

När det är inställt på Ja söker kompilatorn igenom alla C++-källor, inte bara modulgränssnitts- och huvudenhetskällor, efter beroenden för modul- och rubrikenheter. Byggsystemet skapar diagrammet med fullständiga beroenden, vilket säkerställer att alla importerade moduler och rubrikenheter skapas innan de filer som är beroende av dem kompileras. I kombination med Translate Includes to Imports kompileras alla rubrikfiler som anges i en header-units.json fil i samma katalog som rubrikfilen till en rubrikenhet.

Filer som har tillägget .ixx, och filer som har filens egenskaper>C/C++>kompilera som-egenskapen inställd på kompilera som C++-huvudenhet (/exportHeader), genomsöks alltid.

Översätt inklusioner till importeringar

När det är inställt på Ja behandlar kompilatorn ett #include direktiv som ett import direktiv om vissa villkor uppfylls: Huvudfilen anges i en header-units.json fil i samma katalog och en kompilerad rubrikenhet (en .ifc fil) är tillgänglig för huvudfilen. Annars behandlas rubrikfilen som en vanlig #include. Filen header-units.json används för att skapa rubrikenheter för var och en #include utan symbolduplicering. I kombination med Genomsökningskällor för modulberoenden hittar kompilatorn automatiskt alla huvudfiler som kan kompileras till rubrikenheter. Den här egenskapen anger kompilatoralternativet /translateInclude .

Felsök informationsformat

Anger vilken typ av felsökningsinformation som genereras av kompilatorn. Den här egenskapen kräver kompatibla länkningsinställningar. Anger kompileringsalternativen , /Z7, /Zi (felsökningsinformationsformat)./ZI

Choices

  • Ingen – Genererar ingen felsökningsinformation, så kompilering kan gå snabbare.
  • C7-kompatibel – Välj den typ av felsökningsinformation som skapats för ditt program och om den här informationen sparas i objektfiler (.obj) eller i en programdatabas (PDB).
  • Programdatabas – Genererar en programdatabas (PDB) som innehåller typinformation och symbolisk felsökningsinformation för användning med felsökningsprogrammet. Den symboliska felsökningsinformationen innehåller namn och typer av variabler och funktioner samt radnummer.
  • Programdatabas för redigera och fortsätt – Skapar en programdatabas, enligt beskrivningen tidigare, i ett format som stöder funktionen Redigera och Fortsätt .

Stöd för Just My Code-felsökning

Lägger till stödkod för att aktivera felsökning av Just My Code i den här kompileringsenheten. Anger /JMC.

Stöd för Common Language RunTime

Använd .NET-körtidstjänsten. Den här växeln är inte kompatibel med vissa andra växlar. Mer information finns i dokumentationen om /clr familjen med växlar.

Choices

  • Inget stöd för Common Language RunTime – inget stöd för Common Language RunTime
  • Stöd för Common Language RunTime – Skapar metadata för ditt program som kan användas av andra CLR-program. Gör också att ditt program kan använda typer och data i metadata för andra CLR-komponenter.
  • Pure MSIL Common Language RunTime Support – Genererar en MSIL-endast utdatafil utan inbyggd körbar kod, även om den kan innehålla inbyggda typer som kompilerats till MSIL.
  • Säkert stöd för MSIL Common Language Runtime – Genererar endast MSIL (ingen native körbar kod) och verifierbar resultatfil.

Använda Windows Runtime-tillägget

Använd Windows Run-Time-språktilläggen. Anger /ZW.

Ignorera startbanderoll

Undertrycker visning av inloggningsbanderollen när kompilatorn startar och visar informationsmeddelanden under kompileringen.

Varningsnivå

Välj hur strikt du vill att kompilatorn ska vara angående kodfel. Anger /W0 - /W4.

Choices

  • Inaktivera Alla varningar – Nivå 0 inaktiverar alla varningar.
  • Nivå1 – Nivå 1 visar allvarliga varningar. Nivå 1 är standardvarningsnivån på kommandoraden.
  • Nivå 2 – Nivå 2 visar alla varningar och varningar på nivå 1 som är mindre allvarliga än nivå 1.
  • Nivå 3 – Nivå 3 visar alla varningar på nivå 2 och alla andra varningar som rekommenderas i produktionssyfte.
  • Nivå 4 – Nivå 4 visar alla varningar på nivå 3 plus informationsvarningar, som i de flesta fall kan ignoreras på ett säkert sätt.
  • EnableAllWarnings – Aktiverar alla varningar, inklusive de som är inaktiverade som standard.

Behandla varningar som fel

Behandlar kompilatorvarningar som fel. För ett nytt projekt kan det vara bäst att använda /WX i varje kompilering. Lös alla varningar för att minimera kodfel som är svåra att hitta.

Varningsversion

Dölj varningar som introducerats efter en viss version av kompilatorn. Anger /Wv:xx[.yy[.zzzzz]].

Diagnostikformat

Möjliggör omfattande diagnostik med kolumninformation och källkontext i diagnostikmeddelanden.

Choices

  • Caret – Innehåller kolumninformation i diagnostikmeddelandet. Och matar ut relevant källkodsrad med en caret som anger den problematiska kolumnen.
  • Kolumninformation – Innehåller dessutom kolumnnumret på raden där diagnostiken utfärdas, i förekommande fall.
  • Klassisk – Visar endast tidigare, koncisa diagnostiska meddelanden med radnummer.

SDL-kontrolleringar

Ytterligare SDL-rekommenderade kontroller (Security Development Lifecycle), omfattar aktivering av ytterligare funktioner för säker kodgenerering och möjliggör extra säkerhetsrelaterade varningar som fel. Ställer in /sdl, /sdl-.

Kompilering med flera processorer

Aktivera kompilering med flera processorer. Anger kompilatoralternativet /MP .

Aktivera AddressSanitizer

Kompilerar och länkar programmet med AddressSanitizer-instrumentation. Den här egenskapen stöder för närvarande x86- och x64-målversioner. Anger kompilatoralternativet /fsanitize .

Egenskaper för C/C++-optimering

Optimization

Välj alternativ för kodoptimering. välj Anpassad för att använda specifika optimeringsalternativ. Anger /Od, /O1, /O2.

Choices

  • Anpassad – Anpassad optimering.
  • Avaktiverad – Avaktivera optimering.
  • Maximal optimering (storleksprioritet) – motsvarar /Os /Oy /Ob2 /Gs /GF /Gy
  • Maximal optimering (optimera för hastighet) – motsvarar /Oi /Ot /Oy /Ob2 /Gs /GF /Gy
  • Optimeringar (favorhastighet) – motsvarar /Oi /Ot /Oy /Ob2

Inline-funktionsexpansion

Välj nivån för den infogade funktionsexpansionen för bygget. Anger /Ob.

Choices

  • Standardinställning
  • Inaktiverat – Inaktiverar infogad expansion, vilket är aktiverat som standard.
  • Endast __inline – expanderar endast funktioner som har markerats som inline, __forceinlineeller __inline. Eller i en C++-medlemsfunktion som definierats i en klassdeklaration.
  • Any Suitable – expanderar funktioner som markerats som inline eller __inline och andra funktioner som kompilatorn väljer. (Expansion sker efter kompilatorns gottfinnande, ofta kallat autoinlining.)

Aktivera inbyggda funktioner

Aktiverar inbyggda funktioner. Om du använder inbyggda funktioner genereras snabbare, men kanske större, kod. Anger /Oi.

Favoritstorlek eller hastighet

Om kodstorlek eller kodhastighet ska gynnas. Global optimering måste vara aktiverat. Ställer in /Ot, /Os.

Choices

  • Prioritera liten kod – Minimerar storleken på EXE:er och DLL:er genom att instruera kompilatorn att prioritera storlek framför hastighet.
  • Prioritera snabb kod – Maximerar hastigheten för EXE:er och DLL:er genom att instruera kompilatorn att prioritera hastighet framför storlek. (Det här värdet är standardvärdet.)
  • Varken – Ingen storleks- och hastighetsoptimering.

Utelämna stackpekare

Undertrycker skapandet av bildrutepekare i anropsstacken.

Aktivera Fiber-Safe optimeringar

Aktiverar optimering av minnesutrymme när du använder fibrer och trådlocal lagringsåtkomst. Anger /GT.

Optimering av hela programmet

Aktiverar optimeringar mellan moduler genom att fördröja kodgenereringen till länktiden. Kräver länkalternativet Länktidskodgenerering. Anger /GL.

Egenskaper för C/C++ förprocessor

Definitioner för förprocessor

Definierar förbearbetningssymboler för källfilen.

Odefiniera förprocessordefinitioner

Anger en eller flera förprocessorer som är odefinierade. Anger /U.

Odefiniera alla förprocessordefinitioner

Odefiniera alla tidigare definierade förprocessorvärden. Anger /u.

Ignorera standardsökvägar för inkludering

Hindrar kompilatorn från att söka efter inkluderingsfiler i kataloger som anges i MILJÖvariablerna INCLUDE.

Förbearbeta till en fil

Förbearbetar C- och C++-källfiler och skriver förbearbetade utdata till en fil. Det här alternativet undertrycker kompilering och skapar ingen .obj-fil.

Förbehandla dölja radnummer

Förbearbeta utan ett #line direktiv.

Behåll kommentarer

Undertrycker kommentarsremsan från källkoden. kräver att minst ett av förbearbetningsalternativen anges. Anger /C.

Egenskaper för C/C++-kodgenerering

Aktivera strängpooler

Kompilatorn skapar bara en skrivskyddad kopia av identiska strängar i programbilden. Det resulterar i mindre program, en optimering som kallas strängpooler. /O1, /O2, och /ZI ange /GF automatiskt alternativet.

Aktivera minimal ombyggnad

Möjliggör minimal återskapande, vilket avgör om C++-källfiler som innehåller ändrade C++-klassdefinitioner ska kompileras om, lagrade i huvudfiler .h .

Aktivera C++-undantag

Anger vilken modell av undantagshantering som ska användas av kompilatorn.

Choices

  • Ja med SEH-undantag – undantagshanteringsmodellen som fångar asynkrona (strukturerade) och synkrona undantag (C++). Anger /EHa.
  • Ja – Undantagshanteringsmodellen som endast fångar C++-undantag och uppmanar kompilatorn att anta att externa C-funktioner aldrig utlöser ett C++-undantag. Anger /EHsc.
  • Ja med Externa C-funktioner – Undantagshanteringsmodellen som endast fångar C++-undantag och instruerar kompilatorn att anta att externa C-funktioner utlöser ett undantag. Anger /EHs.
  • Nej – Ingen undantagshantering.

Kontroll av mindre typ

Aktivera kontroll av konvertering till mindre typer, som inte är kompatibla med någon annan optimeringstyp än felsökning. Anger /RTCc.

Grundläggande körningskontroller

Aktivera grundläggande körningsfelkontroller som inte är kompatibla med någon annan optimeringstyp än felsökning. Ställer in /RTCs, /RTCu, /RTC1.

Choices

  • Stack Frames – Aktiverar körningsfelkontroll för stackram.
  • Uninitialiserade variabler – Rapporterar när en variabel används utan att ha initierats.
  • Både (/RTC1, equiv. till /RTCsu) – motsvarande /RTCsu.
  • Standard – Standardkörningskontroller.

Körtidsbibliotek

Specificera runtime-bibliotek för länkning. Sätter /MT, /MTd, /MD, /MDd.

Choices

  • Multitrådad – Gör att programmet använder den multitrådade, statiska versionen av körningsbiblioteket.
  • Felsökning med flera trådar – Definierar _DEBUG och _MT. Det här alternativet gör också att kompilatorn placerar biblioteksnamnet LIBCMTD.lib i .obj filen så att länkaren använder LIBCMTD.lib för att matcha externa symboler.
  • Multitrådad DLL – Gör att programmet använder den multitrådade och DLL-specifika versionen av körningsbiblioteket. Definierar _MT och _DLL och gör att kompilatorn placerar biblioteksnamnet MSVCRT.lib i .obj-filen.
  • Multitrådad felsöknings-DLL – Definierar _DEBUG, _MT och _DLL och gör att ditt program använder den specifika versionen av körbiblioteket för multitrådning och felsökning av DLL. Det gör också att kompilatorn placerar biblioteksnamnet MSVCRTD.lib i .obj filen.

Struct-medlemsjustering

Anger 1, 2, 4 eller 8-bytegränser för anpassning av strukturmedlemmar. Anger /Zp.

Choices

  • 1 byte – Packar strukturer på en bytes gränser. Samma som /Zp.
  • 2 byte: Packar strukturer på två byte-gränser.
  • 4 byte – Packar strukturer på fyra bytes gränser.
  • 8 byte – Packar strukturer på åtta bytes gränser (standard).
  • 16 byte – Packar strukturer på sextonbytesgränser.
  • Standard – Standardjusteringsinställningar.

Säkerhetskontroll

Säkerhetskontrollen hjälper till att identifiera stackbuffertöverkörningar, ett vanligt angrepp på ett programs säkerhet.

Choices

  • Inaktivera säkerhetskontroll – Inaktivera säkerhetskontroll. Anger /GS-.
  • Aktivera säkerhetskontroll – Aktivera säkerhetskontroll. Anger /GS.

Kontrollera Flow Guard

Skyddssäkerhetskontrollen hjälper till att identifiera försök att skicka till ett otillåtet kodblock.

Choices

  • Ja – Aktivera säkerhetskontroll med Guard Sets /guard:cf.
  • No

Aktivera länknivå för funktioner

Gör att kompilatorn kan paketera enskilda funktioner i form av paketerade funktioner (COMDAT). Krävs för att redigera och fortsätta att fungera. Anger /Gy.

Aktivera parallell kodgenerering

Möjliggör för kompilatorn att generera parallell kod för loopar som identifieras med #pragma loop(hint_parallel[(n)]) när optimering är aktiverad.

Aktivera förbättrad instruktionsuppsättning

Aktivera användning av instruktioner som finns på processorer som stöder förbättrade instruktionsuppsättningar. Till exempel förbättringarna SSE, SSE2, AVX och AVX2 till IA-32. Och förbättringarna av AVX och AVX2 till x64. För närvarande /arch:SSE och /arch:SSE2 är endast tillgängliga när du skapar för x86-arkitekturen. Om inget alternativ anges använder kompilatorn instruktioner som finns på processorer som stöder SSE2. Användning av förbättrade instruktioner kan inaktiveras med /arch:IA32. Mer information finns i /arch (x86), /arch (x64), /arch (ARM64)och /arch (ARM).

Choices

  • Streaming SIMD Extensions – Streaming SIMD Extensions. Uppsättningar /arch:SSE
  • Streaming SIMD Extensions 2 – Streaming SIMD Extensions 2. Uppsättningar /arch:SSE2
  • Avancerade vektortillägg – Avancerade vektortillägg. Uppsättningar /arch:AVX
  • Avancerade vektortillägg 2 – Avancerade vektortillägg 2. Uppsättningar /arch:AVX2
  • Inga förbättrade instruktioner – inga förbättrade instruktioner. Uppsättningar /arch:IA32
  • Inte inställt – inte inställt.

Flyttalsmodell

Anger flyttalsmodellen. Ställer in /fp:precise, /fp:strict, /fp:fast.

Choices

  • Exakt – standard. Förbättrar konsekvensen i flyttalstester för likhet och ojämlikhet.
  • Strikt – Den striktaste flyttalsmodellen. /fp:strict orsakar att fp_contract blir AV och fenv_access blir PÅ. /fp:except är underförstådd och kan inaktiveras genom att /fp:except-uttryckligen ange . När det används med /fp:except-, tvingar /fp:strict fram strikt flyttalssemantik men utan hänsyn till exceptionella händelser.
  • Snabb – Skapar den snabbaste koden i de flesta fall.

Aktivera flyttalsundantag

Tillförlitlig flyttalsundantagsmodell. Undantag utlöses omedelbart efter att de har utlösts. Anger /fp:except.

Skapa snabbkorrigeringsbar avbildning

När hotpatching är på ser kompilatorn till att den första instruktionen för varje funktion är två byte, vilket krävs för snabbkorrigering. Anger /hotpatch.

Åtgärder mot Spectre

Spectre-mitigeringar för CVE 2017-5753. Anger /Qspectre.

Choices

  • Aktiverad – Aktivera Spectre-åtgärdsfunktionen för CVE 2017-5753
  • Inaktiverad – inte inställd.

C/C++-språkegenskaper

Inaktivera språktillägg

Undertrycker eller aktiverar språktillägg. Anger /Za.

Behandla WChar_t som inbyggd typ

När den anges blir typen wchar_t en intern typ som mappar till __wchar_t på samma sätt som short mappar till __int16. /Zc:wchar_t är aktiverat som standard.

Framtvinga efterlevnad i för loopomfång

Implementerar C++-standardbeteende för for instruktionsloopar med Microsoft-tillägg. Anger /Za, /Ze (Inaktivera språktillägg. /Zc:forScope är aktiverat som standard.

Ta bort orefererad kod och data

När detta anges genererar kompilatorn inte längre symbolinformation för orefererad kod och data.

Framtvinga typkonverteringsregler

Används för att identifiera en referenstyp för rvalue som ett resultat av en gjuten åtgärd enligt C++11-standarden.

Aktivera körtids-typinformation

Lägger till kod för kontroll av C++-objekttyper vid körning (körtidsinformation, eller RTTI). Ställer in /GR, /GR-.

OpenMP-stöd

Aktiverar OpenMP 2.0-språktillägg. Anger /openmp.

C++-språkstandard

Avgör vilken C++-språkstandard som kompilatorn aktiverar. Standardvärdet anger inte något standardalternativ, så kompilatorn använder standardinställningen C++14. Om du väljer ett specifikt värde är motsvarande /std kompilatoralternativ set.md).

Choices

  • Förval (ISO C++14 Standard)
  • ISO C++14 Standard (/std:c++14)
  • ISO C++17 Standard (/std:c++17)
  • ISO C++20 Standard (/std:c++20)
  • Förhandsversion – Funktioner från det senaste C++-arbetsutkastet (/std:c++senaste)

C-språksstandard

Avgör vilken C-språkstandard som kompilatorn aktiverar. Standardvärdet anger inte något standardalternativ, så kompilatorn använder standardinställningen för äldre MSVC. Om du väljer ett specifikt värde är motsvarande /std kompilatoralternativ set.md).

Choices

  • Standardinställning (äldre MSVC)
  • ISO C11 Standard (/std:c11)
  • ISO C17 (2018) Standard (/std:c17)

Överensstämmelseläge

Aktiverar eller undertrycker överensstämmelseläget. Anger /permissive-.

Aktivera experimentella C++-standardbiblioteksmoduler

Experimentellt stöd för C++-moduler enligt TS och standardbiblioteket.

Skapa ISO C++23-standardbiblioteksmoduler

Från och med Visual Studio 17.6, när den här egenskapen är aktiverad och C++ Language Standard har angetts till /std:c++latest, hittar och skapar Microsoft C++-projekt automatiskt ISO C++23 Standard Library-moduler. På så sätt kan du import std eller import std.compat i din C++-kod.

Egenskaper för förkompilerade C/C++-huvudfiler

Skapa/använd förkompilerat huvud

Gör det möjligt att skapa eller använda en fördefinierad rubrik under bygget. Anger /Yc, /Yu.

Choices

  • Skapa – Instruerar kompilatorn att skapa en fördefinierad rubrikfil (.pch) som representerar kompileringstillståndet vid en viss tidpunkt.
  • Använd – Instruerar kompilatorn att använda en befintlig fördefinierad rubrikfil (.pch) i den aktuella kompileringen.
  • Använd inte förkompilerade rubriker – Använd inte förkompilerade rubriker.

Förkompilerad rubrikfil

Anger namnet på huvudfilen som ska användas när du skapar eller använder en fördefinierad rubrikfil. Ställer in /Yc, /Yu.

Fördefinierad utdatafil för sidhuvud

Anger sökvägen eller namnet på den genererade förkompilerade huvudfilen. Anger /Fp.

Egenskaper för C/C++-utdatafiler

Expandera attributkälla

Skapa listfil med expanderade attribut som matas in i källfilen. Anger /Fx.

Assembler-utdata

Anger innehållet i utdatafilen för sammansättningsspråk. Sätter /FA, /FAc, /FAs, /FAcs.

Choices

  • Ingen lista – Ingen lista.
  • Assembly-Only Listing - Assembly-kod; .asm
  • Sammansättning med maskinkod – maskin- och sammansättningskod; .cod
  • Sammansättning med källkod – källkod och sammansättningskod; .asm
  • Sammansättning, maskinkod och källa – sammansättning, maskinkod och källkod; .cod

Använda Unicode för assembler-lista

Gör att utdatafilen skapas i UTF-8-format.

PLATS för ASM-lista

Anger relativ sökväg eller namn för ASM-listningsfilen. kan vara fil- eller katalognamn. Anger /Fa.

Objektfilnamn

Anger ett namn som åsidosätter standardobjektfilens namn. kan vara fil- eller katalognamn. Anger /Fo.

Programdatabasens filnamn

Anger ett namn på en kompilatorgenererad PDB-fil. anger också basnamnet för den nödvändiga kompilatorgenererade IDB-filen. kan vara fil- eller katalognamn. Anger /Fd.

Generera XML-dokumentationsfiler

Anger att kompilatorn ska generera XML-dokumentationens kommentarsfiler (. XDC). Anger /doc.

Filnamn för XML-dokumentation

Anger namnet på de genererade XML-dokumentationsfilerna. kan vara fil- eller katalognamn. Anger /doc:<namn>.

C/C++ Bläddra bland informationsegenskaper

Aktivera bläddringsinformation

Anger nivån på bläddrarinformationen i .bsc filen. Anger /FR.

Bläddra i informationsfil

Anger valfritt namn för webbläsarinformationsfilen. Anger /FR<namn>.

Externa inkluderar

Behandla filer som ingår med vinkelparenteser som externa

Anger om filer som ingår med vinkelparenteser ska behandlas som externa. Ställ in den här egenskapen på Ja för att ange kompilatoralternativet /external:anglebrackets .

Varningsnivå för externt sidhuvud

Välj hur strikt du vill att kompilatorn ska vara gällande kodfel i externa huvudfiler. Den här egenskapen anger kompilatoralternativet /external:Wn . Om det här värdet är inställt på Ärv projektvarningsnivå eller standardvärdet ignoreras andra /external alternativ.

Malldiagnostik i externa huvuden

Anger om du vill utvärdera varningsnivån i en mall-instansieringskedja. Ställ in den här egenskapen på Ja för att ange kompilatoralternativet /external:templates- .

Inaktivera kodanalys för externa rubriker

Inaktiverar kodanalys för externa huvuden. Anger kompilatoralternativet /analyze:external- .

Analysregleruppsättning för externa rubriker

Anger åsidosättning av en kodanalysregel för externa headerfiler. Om den inte anges används inställningen Kodanalys. Anger kompilatoralternativet /analyze:external:ruleset path .

Avancerade egenskaper för C/C++

Samtalskonvention

Välj standardanropskonventionen för ditt program (kan åsidosättas av funktionen). Ställer in /Gd, /Gr, /Gz, /Gv.

Choices

  • __cdecl – Anger anropskonventionen __cdecl för alla funktioner utom C++-medlemsfunktioner och -funktioner markerade __stdcall eller __fastcall.
  • __fastcall – Anger anropskonventionen __fastcall för alla funktioner utom C++-medlemsfunktioner och -funktioner markerade __cdecl eller __stdcall. Alla __fastcall funktioner måste ha prototyper.
  • __stdcall – Anger anropskonventionen __stdcall för alla funktioner utom C++-medlemsfunktioner och -funktioner markerade __cdecl eller __fastcall. Alla __stdcall funktioner måste ha prototyper.
  • __vectorcall – Anger anropskonventionen __vectorcall för alla funktioner utom C++-medlemsfunktioner och -funktioner märkta __cdecl, __fastcalleller __stdcall. Alla __vectorcall funktioner måste ha prototyper.

Kompilera som

Välj alternativet kompilera språk för källfiler. Anger /TC, /TP, /interface, /internalPartition eller /exportHeader alternativ.

Choices

  • Standard – standard.
  • Kompilera som C-kod (/TC) – Kompilera angivna källfiler som C-kod. Som standard kompileras filer med ett .c tillägg som C.
  • Kompilera som C++ Code (/TP) – Kompilera angivna källfiler som C++-kod. Som standard kompileras alla källfiler som inte har ett .c, .ixx, .cppm, .heller inget tillägg som C++.
  • Kompilera som C++-modulkod (/interface) – Kompilera angivna källfiler som C++-modulkod. Som standard kompileras filer med ett .ixx eller .cppm tillägg som C++-modulkod.
  • Kompilera som intern C++-modulpartition (/internalPartition) – Kompilera angivna källfiler som intern partition för C++-modulen.
  • Kompilera som C++ Rubrikenhet (/exportHeader) – Kompilera angivna källfiler som C++-huvudenhet. Som standard kompileras filer med ett .h tillägg eller inget tillägg som rubrikenheter.

Inaktivera specifika varningar

Inaktivera de angivna varningsnumren. Placera varningsnumren i en semikolonavgränsad lista. Sätter /wd<nummer>.

Tvingad inkluderingsfil

en eller flera obligatoriska inkluderingsfiler. Anger /FI<namn>.

Tvingad #using fil

Anger en eller flera framtvingade #using filer. Ställer in /FU<namn>.

Visa inkluderar

Genererar en lista över inkluderingsfiler med kompilatorutdata. Anger /showIncludes.

Använd fullständiga sökvägar

Använd fullständiga sökvägar i diagnostikmeddelanden. Anger /FC.

Utelämna standardbibliotekets namn

Innehåller inte standardbiblioteksnamn i .obj filer. Anger /Zl.

Intern felrapportering för kompilator

Anmärkning

Det här alternativet är inaktuellt. Från och med Windows Vista styrs felrapportering av inställningarna för Windows Felrapportering (WER).

Behandla specifika varningar som fel

Behandlar den specifika kompilatorvarningen som ett fel där n är en kompilatorvarning.

Ytterligare alternativ

Ytterligare alternativ.