Pages de propriétés C/C++
Les pages de propriétés suivantes se trouvent sous Propriétés de configuration des propriétés>>du projet>C/C++ :
Propriétés générales C/C++
Autres répertoires Include
Spécifie un ou plusieurs répertoires à ajouter au chemin include. Séparez les répertoires par des points-virgules (';
) s’il y en a plusieurs. Définit l’option du /I
compilateur (Répertoires Include supplémentaires).
Répertoires #using supplémentaires
Spécifie un ou plusieurs répertoires à rechercher pour résoudre les noms passés à une #using
directive. Séparez les répertoires par des points-virgules (';
) s’il y en a plusieurs. Définit l’option du /AI
compilateur.
Répertoires BMI supplémentaires
Spécifie un ou plusieurs répertoires à rechercher pour résoudre les noms passés à une import
directive. Séparez les répertoires par des points-virgules (';
) s’il y en a plusieurs. Définit l’option du /ifcSearchDir[path]
compilateur.
Dépendances de module supplémentaires
Spécifie un ou plusieurs modules à utiliser pour résoudre les noms passés à une import
directive. Séparez les répertoires par des points-virgules (';
) s’il y en a plusieurs. Définit l’option du /reference
compilateur.
Dépendances d’unité d’en-tête supplémentaires
Spécifie une ou plusieurs unités d’en-tête à utiliser pour résoudre les noms passés à une directive d’en-tête import
. Séparez les répertoires par des points-virgules (';
) s’il y en a plusieurs. Définit l’option du /headerUnit
compilateur.
Rechercher des sources de dépendances de module
Lorsqu’il est défini sur Oui, le compilateur analyse toutes les sources C++, pas seulement les sources d’interface de module et d’unité d’en-tête, pour les dépendances des unités de module et d’en-tête. Le système de génération génère le graphique des dépendances complètes, ce qui garantit que tous les modules et unités d’en-tête importés sont générés avant de compiler les fichiers qui en dépendent. Lorsqu’il est combiné avec Translate Include en importations, tout fichier d’en-tête spécifié dans un header-units.json
fichier dans le même répertoire que le fichier d’en-tête est compilé dans une unité d’en-tête.
Les fichiers qui ont l’extension .ixx
et les fichiers qui ont leurs propriétés>de fichier C/C++>Compile As sont toujours analysés en tant que compilation en tant qu’unité d’en-tête C++ (/exportHeader).
Traduire les éléments inclus dans les importations
Lorsqu’il est défini sur Oui, le compilateur traite une #include
directive comme une import
directive si certaines conditions sont remplies : le fichier d’en-tête est spécifié dans un header-units.json
fichier dans le même répertoire et une unité d’en-tête compilée (un .ifc
fichier) est disponible pour le fichier d’en-tête. Sinon, le fichier d’en-tête est traité comme une normale #include
. Le header-units.json
fichier est utilisé pour générer des unités d’en-tête pour chacune #include
sans duplication de symboles. Lorsqu’il est combiné à l’analyse des sources de dépendances de module, le compilateur recherche automatiquement tous les fichiers d’en-tête qui peuvent être compilés en unités d’en-tête. Cette propriété définit l’option du /translateInclude
compilateur.
Format des informations de débogage
Indique le type d'informations de débogage générées par le compilateur. Cette propriété nécessite des paramètres compatibles de l’éditeur de liens. Définit /Z7
les options du /ZI
compilateur (/Zi
format d’informations de débogage).
Choices
- Aucune : ne génère aucune information de débogage ; la compilation peut donc être plus rapide.
- Compatible C7 : sélectionnez le type d’informations de débogage créées pour votre programme et indiquez si ces informations sont conservées dans des fichiers objet (.obj) ou dans une base de données de programme (PDB).
- Base de données de programme : produit une base de données de programme (PDB) qui contient des informations de type et des informations de débogage symboliques à utiliser avec le débogueur. Les informations de débogage symboliques incluent les noms et les types de variables et de fonctions, ainsi que les numéros de ligne.
- Program Database for Edit And Continue : produit une base de données de programme, comme décrit précédemment, dans un format qui prend en charge la fonctionnalité Modifier et Continuer .
Prise en charge du débogage de mon code uniquement
Ajoute du code de prise en charge pour l’activation du débogage Just My Code dans cette unité de compilation. Définit /JMC
.
Prise en charge de Common Language RunTime
Utilisez le service runtime .NET. Ce commutateur n’est pas compatible avec d’autres commutateurs ; consultez la documentation sur la /clr
famille de commutateurs pour plus d’informations.
Choices
- Aucune prise en charge Common Language RunTime - Aucune prise en charge de Common Language RunTime
- Prise en charge common Language RunTime : crée des métadonnées pour votre application qui peuvent être consommées par d’autres applications CLR. Permet également à votre application de consommer des types et des données dans les métadonnées d’autres composants CLR.
- Prise en charge pure du langage commun MSIL - Produit un fichier de sortie MSIL uniquement sans code exécutable natif, même s’il peut contenir des types natifs compilés dans MSIL.
- Prise en charge du runTime du langage commun MSIL sécurisé : produit un fichier de sortie MSIL uniquement (aucun code exécutable natif) et un fichier de sortie vérifiable.
Utiliser l’extension Windows Runtime
Utilisez les extensions de langages d’exécution Windows. Définit /ZW
.
Supprimer la bannière de démarrage
Supprime l’affichage de la bannière d’authentification lorsque le compilateur démarre et affiche des messages d’information lors de la compilation.
Niveau d’avertissement
Sélectionnez la rigueur avec laquelle le compilateur doit traiter les erreurs de code. Définit /W0
- /W4
.
Choices
- Désactiver tous les avertissements : le niveau 0 désactive tous les avertissements.
- Niveau 1 : le niveau 1 affiche des avertissements graves. Le niveau 1 est le niveau d’avertissement par défaut de la ligne de commande.
- Niveau 2 : le niveau 2 affiche tous les avertissements de niveau 1 et les avertissements moins graves que le niveau 1.
- Niveau 3 : le niveau 3 affiche tous les avertissements de niveau 2 et tous les autres avertissements recommandés à des fins de production.
- Level4 - Niveau 4 affiche tous les avertissements de niveau 3 ainsi que les avertissements d’information, qui, dans la plupart des cas, peuvent être ignorés en toute sécurité.
- EnableAllWarnings : active tous les avertissements, y compris ceux désactivés par défaut.
Considérer les avertissements comme des erreurs
Traite les avertissements du compilateur comme des erreurs. Pour un nouveau projet, il peut être préférable d’utiliser /WX
dans chaque compilation. Résolvez tous les avertissements pour réduire les défauts de code difficiles à rechercher.
Version d’avertissement
Masquer les avertissements introduits après une version spécifique du compilateur. Définit /Wv:xx[.yy[.zzzzz]]
.
Diagnostics Format
Active les diagnostics enrichis, avec les informations de colonne et le contexte source dans les messages de diagnostic.
Choices
- Caret : fournit des informations de colonne dans le message de diagnostic. Et génère la ligne de code source appropriée avec un signe de position qui indique la colonne incriminant.
- Informations sur la colonne : fournit également le numéro de colonne dans la ligne où le diagnostic est émis, le cas échéant.
- Classique : génère uniquement les messages de diagnostic concis précédents avec le numéro de ligne.
Vérifications SDL
Vérifications recommandées supplémentaires sur le cycle de vie du développement de la sécurité (SDL) ; inclut l’activation de fonctionnalités de génération de code sécurisée supplémentaires et active des avertissements supplémentaires pertinents pour la sécurité en tant qu’erreurs. Définit /sdl
, /sdl-
.
Compilation multiprocesseur
Activez la compilation multiprocesseur. Définit l’option du /MP
compilateur.
Activer un assainisseur d’adresse
Compile et lie le programme à l’instrumentation AddressSanitizer. Cette propriété prend actuellement en charge les builds cibles x86 et x64. Définit l’option du /fsanitize
compilateur.
Propriétés d’optimisation C/C++
Optimisation
Sélectionnez l’option pour l’optimisation du code ; choisissez Personnalisé pour utiliser des options d’optimisation spécifiques. Jeux /Od
, /O1
, /O2
.
Choices
- Personnalisé : optimisation personnalisée.
- Désactivé : désactive l’optimisation.
- Optimisation maximale (taille de faveur) - Équivalent à
/Os /Oy /Ob2 /Gs /GF /Gy
- Optimisation maximale (favoriser la vitesse) - Équivalent à
/Oi /Ot /Oy /Ob2 /Gs /GF /Gy
- Optimisations (favoriser la vitesse) - Équivalent à
/Oi /Ot /Oy /Ob2
Extension de fonction inline
Sélectionnez le niveau d’extension de fonction inline pour la build. Définit /Ob
.
Choices
- Par défaut
- Désactivé : désactive l’extension inline, qui est activée par défaut.
- Uniquement __inline : développe uniquement les fonctions marquées comme
inline
,__forceinline
ou__inline
. Ou, dans une fonction membre C++, définie dans une déclaration de classe. - Tout approprié : développe les fonctions marquées comme
inline
ou__inline
toutes les autres fonctions choisies par le compilateur. (L’expansion se produit à la discrétion du compilateur, souvent appelée autoinlining.)
Activer les fonctions intrinsèques
Active les fonctions intrinsèques. L’utilisation de fonctions intrinsèques génère plus rapidement, mais peut-être du code plus grand. Définit /Oi
.
Favoriser la taille ou la vitesse
Qu’il s’agisse de favoriser la taille du code ou la vitesse du code ; L’option « Optimisation globale » doit être activée. Définit /Ot
, /Os
.
Choices
- Privilégiez le petit code : réduit la taille des EXEs et des DLL en demandant au compilateur de favoriser la taille par rapport à la vitesse.
- Favoriser le code rapide : optimise la vitesse des EXEs et des DLL en demandant au compilateur de favoriser la vitesse par rapport à la taille. (Cette valeur est la valeur par défaut.)
- Ni l’un ni l’autre : aucune optimisation de la taille et de la vitesse.
Omettre des pointeurs d’images
Empêche la création des pointeurs de frame sur la pile des appels.
Activer les optimisations fibre-safe
Active l’optimisation de l’espace mémoire lors de l’utilisation de fibres et d’un accès au stockage local de thread. Définit /GT
.
Optimisation de l’ensemble du programme
Active les optimisations inter-modules en retardant la génération de code pour lier le temps. Nécessite l’option Éditeur de liens Génération de code de temps de liaison. Définit /GL
.
Propriétés du préprocesseur C/C++
Définitions de préprocesseur
Définit les symboles de prétraitement pour votre fichier source.
Annuler la définition de définitions de préprocesseur
Spécifie l’annulation de la définition d’une ou de plusieurs définitions du préprocesseur. Définit /U
.
Annulation de la définition de toutes les définitions du préprocesseur
Annule la définition de toutes les valeurs de préprocesseur précédemment définies. Définit /u
.
Ignorer les chemins d’accès Include Standard
Empêche le compilateur de rechercher des fichiers include dans les répertoires spécifiés dans les variables d’environnement INCLUDE.
Prétraitement vers un fichier
Prétraite les fichiers sources C et C++ et écrit la sortie prétraite dans un fichier. Cette option supprime la compilation et ne produit pas de .obj
fichier.
Prétraiter les numéros de ligne
Prétraitement sans directives #line.
Conserver les commentaires
Supprime la bande de commentaires du code source ; nécessite de définir au moins l’une des options de prétraitement . Définit /C
.
Propriétés de génération de code C/C++
Activer le regroupement de chaînes
Le compilateur crée une seule copie en lecture seule de chaînes identiques dans l’image du programme. Cela entraîne des programmes plus petits, une optimisation appelée regroupement de chaînes. /O1
, /O2
et /ZI
définissez /GF
automatiquement l’option.
Activer la reconstruction minimale
Active une reconstruction minimale, qui détermine s’il faut recompiler les fichiers sources C++ qui incluent les définitions de classes C++ modifiées, stockées dans les fichiers d’en-tête .h
.
Activer les exceptions C++
Spécifie le modèle de gestion des exceptions à utiliser par le compilateur.
Choices
- Oui avec les exceptions SEH : modèle de gestion des exceptions qui intercepte les exceptions asynchrones (structurées) et synchrones (C++). Définit
/EHa
. - Oui : modèle de gestion des exceptions qui intercepte uniquement les exceptions C++ et indique au compilateur de supposer que les fonctions C extern ne lèvent jamais d’exception C++. Définit
/EHsc
. - Oui avec les fonctions Extern C : modèle de gestion des exceptions qui intercepte uniquement les exceptions C++ et indique au compilateur de supposer que les fonctions C extern lèvent une exception. Définit
/EHs
. - Non - Aucune gestion des exceptions.
Vérification de type plus petite
Activez la vérification de la conversion en types plus petits, incompatibles avec n’importe quel type d’optimisation autre que le débogage. Définit /RTCc
.
Vérifications de base à l’exécution
Activez les vérifications d’erreur d’exécution de base, incompatibles avec tout type d’optimisation autre que le débogage. Jeux /RTCs
, /RTCu
, /RTC1
.
Choices
- Images de pile : active la vérification des erreurs d’exécution de l’image de pile.
- Variables non initialisées : signale lorsqu’une variable est utilisée sans avoir été initialisée.
- Les deux (/RTC1, équiv. à /RTCsu) - Équivalent de
/RTCsu
. - Valeur par défaut : vérifications du runtime par défaut .
Bibliothèque Runtime
Spécifiez la bibliothèque Runtime pour la liaison. Définit , , /MD
/MTd
, /MDd
./MT
Choices
- Multithread : provoque l’utilisation de la version statique multithread de la bibliothèque d’exécution.
- Débogage multithread - Définit
_DEBUG
et_MT
. Cette option entraîne également le fait que le compilateur place le nomLIBCMTD.lib
de la bibliothèque dans le.obj
fichier afin que l’éditeur de liens utiliseLIBCMTD.lib
pour résoudre les symboles externes. - DLL multithread - Provoque l’utilisation de la version multithread et DLL spécifique à votre application de la bibliothèque d’exécution. Définit
_MT
et_DLL
provoque le fait que le compilateur place le nom de la bibliothèque MSVCRT.lib dans le.obj
fichier. - DLL de débogage multithread - Définit
_DEBUG
,_MT
et_DLL
provoque l’utilisation de la version multithread multithread et DLL de votre application de la bibliothèque d’exécution. Il entraîne également le fait que le compilateur place le nomMSVCRTD.lib
de la bibliothèque dans le.obj
fichier.
Alignement des membres de struct
Spécifie les limites de 1, 2, 4 ou 8 octets pour l’alignement des membres du struct. Définit /Zp
.
Choices
- 1 Octet - Packs de structures sur des limites d’un octet. Comme pour
/Zp
. - 2 octets : packs de structures sur des limites à deux octets .
- 4 octets : packs de structures sur des limites de quatre octets .
- 8 octets : packs de structures sur des limites de huit octets (valeur par défaut).
- 16 octets - Packs structures sur des limites de seize octets.
- Valeur par défaut : paramètres d’alignement par défaut .
Vérification de la sécurité
La vérification de la sécurité permet de détecter les saturations de mémoire tampon de pile, une tentative courante d’attaque contre la sécurité d’un programme.
Choices
- Désactiver la vérification de la sécurité : désactivez la vérification de la sécurité. Définit
/GS-
. - Activer la vérification de la sécurité : activez la vérification de la sécurité. Définit
/GS
.
Control Flow Guard
La vérification de sécurité guard permet de détecter les tentatives de distribution vers un bloc de code illégal.
Choices
- Oui - Activer la vérification de sécurité avec les ensembles
/guard:cf
de gardes . - Aucun
Activer la liaison au niveau des fonctions
Permet au compilateur d’empaqueter des fonctions individuelles sous la forme de fonctions empaquetées (COMDATs). Requis avec l’option Modifier et Continuer. Définit /Gy
.
Activer la génération de code parallèle
Permet au compilateur de générer du code parallèle pour les boucles identifiées à l’aide #pragma loop(hint_parallel[(n)])
de l’activation de l’optimisation.
Activer le jeu d’instructions amélioré
Activez l’utilisation d’instructions trouvées sur les processeurs qui prennent en charge les jeux d’instructions améliorés. Par exemple, les améliorations apportées à IA-32, SSE2, AVX et AVX2. Et les améliorations avX et AVX2 apportées à x64. Actuellement /arch:SSE
et /arch:SSE2
sont disponibles uniquement lors de la génération pour l’architecture x86. Si aucune option n’est spécifiée, le compilateur utilise des instructions trouvées sur les processeurs qui prennent en charge SSE2. L’utilisation d’instructions améliorées peut être désactivée avec /arch:IA32
. Pour plus d'informations, voir /arch (x86)
, /arch (x64)
, /arch (ARM64)
et /arch (ARM)
.
Choices
- Extensions SIMD de streaming - Extensions SIMD de streaming. Studios
/arch:SSE
- Streaming SIMD Extensions 2 - Streaming SIMD Extensions 2. Studios
/arch:SSE2
- Extensions vectorielles avancées - Extensions vectorielles avancées. Studios
/arch:AVX
- Extensions vectorielles avancées 2 - Extensions vectorielles avancées 2. Studios
/arch:AVX2
- Aucune instruction améliorée - Aucune instruction améliorée. Studios
/arch:IA32
- Non défini - Non défini .
Modèle à virgule flottante
Définit le modèle de virgule flottante. Jeux /fp:precise
, /fp:strict
, /fp:fast
.
Choices
- Précision : valeur par défaut. Améliore la cohérence des tests à virgule flottante pour l’égalité et l’inégalité.
- Strict - Modèle à virgule flottante le plus strict.
/fp:strict
causesfp_contract
d’être désactivés etfenv_access
d’être activés./fp:except
est implicite et peut être désactivé en spécifiant/fp:except-
explicitement . Lorsqu’elle est utilisée avec/fp:except-
,/fp:strict
applique une sémantique à virgule flottante stricte, mais sans respect des événements exceptionnels. - Rapide : crée le code le plus rapide dans la plupart des cas.
Activer les exceptions à virgule flottante
Modèle de virgule flottante fiable. Les exceptions sont levées immédiatement après leur déclenchement. Définit /fp:except
.
Créer une image hotpatchable
Lorsque la mise à jour est activée, le compilateur garantit que la première instruction de chaque fonction est de deux octets, comme requis pour la mise à jour corrective à chaud. Définit /hotpatch
.
Atténuation du spectre
Atténuations de Spectre pour CVE 2017-5753. Définit /Qspectre
.
Choices
- Activé - Activer la fonctionnalité d’atténuation de Spectre pour CVE 2017-5753
- Désactivé : non défini.
Propriétés du langage C/C++
Désactiver les extensions de langage
Supprime ou active les extensions de langage. Définit /Za
.
Traiter WChar_t comme type intégré
Lorsqu’il est spécifié, le type wchar_t
devient un type natif auquel __wchar_t
il est mappé de la même façon que celui short
auquel __int16
il est mappé . /Zc:wchar_t
est activé par défaut.
Forcer la conformité dans l’étendue de boucle For
Implémente le comportement C++ standard pour les boucles d’instruction for
avec les extensions Microsoft. Définit /Za
, /Ze
(Désactiver les extensions de langage. /Zc:forScope
est activé par défaut.
Supprimer le code et les données non référencés
Lorsqu’il est spécifié, le compilateur ne génère plus d’informations de symboles pour le code et les données non référencés.
Appliquer les règles de conversion de type
Utilisé pour identifier un type de référence rvalue à la suite d’une opération de cast en fonction de la norme C++11.
Activer les informations de type au moment de l’exécution
Ajoute du code pour la vérification des types d’objets C++ au moment de l’exécution (informations sur le type d’exécution ou RTTI). Définit /GR
, /GR-
.
Ouvrir le support MP
Active les extensions de langage OpenMP 2.0. Définit /openmp
.
Norme du langage C++
Détermine la norme de langage C++ que le compilateur active. La valeur par défaut ne définit pas d’option standard. Par conséquent, le compilateur utilise son paramètre C++14 par défaut. Si vous sélectionnez une valeur spécifique, l’option de compilateur correspondante /std
est set.md).
Choices
- Par défaut (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)
- Préversion - Fonctionnalités du dernier brouillon de travail C++ (/std :c++latest)
Norme du langage C
Détermine la norme de langage C que le compilateur active. La valeur par défaut ne définit pas d’option standard. Par conséquent, le compilateur utilise son paramètre MSVC hérité par défaut. Si vous sélectionnez une valeur spécifique, l’option de compilateur correspondante /std
est set.md).
Choices
- Par défaut (MSVC hérité)
- Norme ISO C11 (/std :c11)
- ISO C17 (2018) Standard (/std :c17)
Mode de conformité
Active ou supprime le mode de conformité. Définit /permissive-
.
Activer les modules de bibliothèque standard C++ expérimentaux
Prise en charge expérimentale des modules C++ TS et de la bibliothèque standard.
Générer des modules de bibliothèque ISO C++23 Standard
À compter de Visual Studio 17.6, lorsque cette propriété est activée et que C++ Language Standard est défini /std:c++latest
sur , les projets Visual C++ recherchent et créent automatiquement des modules de bibliothèque standard ISO C++23. Cela vous import std
permet ou import std.compat
dans votre code C++.
Propriétés des en-têtes précompilés C/C++
Créer/utiliser un en-tête précompilé
Active la création ou l’utilisation d’un en-tête précompilé pendant la génération. Définit /Yc
, /Yu
.
Choices
- Créer : indique au compilateur de créer un fichier d’en-tête précompilé (
.pch
) qui représente l’état de la compilation à un certain point. - Utiliser : indique au compilateur d’utiliser un fichier d’en-tête précompilé (
.pch
) existant dans la compilation actuelle. - Ne pas utiliser d’en-têtes précompilés : n’utilise pas d’en-têtes précompilés.
Fichier d’en-tête précompilé
Spécifie le nom du fichier d’en-tête à utiliser lors de la création ou de l’utilisation d’un fichier d’en-tête précompilé. Définit /Yc
, /Yu
.
Fichier de sortie d’en-tête précompilé
Spécifie le chemin d’accès ou le nom du fichier d’en-tête précompilé généré. Définit /Fp
.
Propriétés des fichiers de sortie C/C++
Développer la source attribuée
Créez un fichier de référencement avec des attributs développés injectés dans le fichier source. Définit /Fx
.
Sortie de l’assembleur
Spécifie le contenu du fichier de sortie linguistique de l’assembly. Définit , , /FAs
/FAc
, /FAcs
./FA
Choices
- Aucune description - Aucune description.
- Liste d’assembly uniquement - Code d’assembly ;
.asm
- Assembly with Machine Code - Code d’ordinateur et code d’assembly ;
.cod
- Assembly avec code source - Code source et code d’assembly ;
.asm
- Assembly, Code machine et source - Assembly, code machine et code source ;
.cod
Utiliser Unicode pour la description de l’assembleur
Provoque la création du fichier de sortie au format UTF-8.
Emplacement de la liste ASM
Spécifie le chemin d’accès relatif ou le nom du fichier de référencement ASM ; peut être un nom de fichier ou de répertoire. Définit /Fa
.
Nom de fichier objet
Spécifie un nom de substitution pour le nom de fichier objet par défaut. Il peut s’agir d’un nom de fichier ou de répertoire. Définit /Fo
.
Nom du fichier de base de données du programme
Spécifie un nom pour un fichier PDB généré par le compilateur ; spécifie également le nom de base du fichier IDB généré par le compilateur requis ; peut être un nom de fichier ou de répertoire. Définit /Fd
.
Générer des fichiers de documentation XML
Spécifie que le compilateur doit générer des fichiers de commentaires de documentation XML (. XDC). Définit /doc
.
Nom du fichier de documentation XML
Spécifie le nom des fichiers de documentation XML générés ; peut être un nom de fichier ou de répertoire. Définit le /doc:
<nom.>
C/C++ Parcourir les propriétés d’informations
Activer Parcourir les informations
Spécifie le niveau d’informations de navigation dans le .bsc
fichier. Définit /FR
.
Parcourir le fichier d’informations
Spécifie le nom facultatif du fichier d’informations du navigateur. Définit le /FR
<nom.>
Inclut des éléments externes
Traiter les fichiers inclus avec des crochets angle comme externes
Spécifie s’il faut traiter les fichiers inclus avec des crochets angle comme externes. Définissez cette propriété sur Oui pour définir l’option du /external:anglebrackets
compilateur.
Niveau d’avertissement d’en-tête externe
Sélectionnez la manière dont vous souhaitez que le compilateur soit strict sur les erreurs de code dans les en-têtes externes. Cette propriété définit l’option du /external:Wn
compilateur. Si cette valeur est définie sur Hériter du niveau d’avertissement du projet ou par défaut, d’autres /external
options sont ignorées.
Diagnostics de modèle dans les en-têtes externes
Spécifie s’il faut évaluer le niveau d’avertissement sur une chaîne d’instanciation de modèle. Définissez cette propriété sur Oui pour définir l’option du /external:templates-
compilateur.
Désactiver l’analyse du code pour les en-têtes externes
Désactive l’analyse du code pour les en-têtes externes. Définit l’option du /analyze:external-
compilateur.
Ensemble de règles d’analyse pour les en-têtes externes
Spécifie un remplacement de jeu de règles d’analyse du code pour les en-têtes externes. S’il n’est pas spécifié, le paramètre Analyse du code est utilisé. Définit l’option du /analyze:external:ruleset path
compilateur.
Propriétés avancées C/C++
Convention d’appel
Sélectionnez la convention d’appel par défaut pour votre application (peut être remplacée par fonction). Définit , , /Gz
/Gr
, /Gv
./Gd
Choices
__cdecl
- Spécifie la convention d’appel__cdecl
pour toutes les fonctions, à l’exception des fonctions membres C++ marquées__stdcall
ou__fastcall
.__fastcall
- Spécifie la convention d’appel__fastcall
pour toutes les fonctions, à l’exception des fonctions membres C++ marquées__cdecl
ou__stdcall
. Toutes les fonctions__fastcall
doivent avoir des prototypes.__stdcall
- Spécifie la convention d’appel__stdcall
pour toutes les fonctions, à l’exception des fonctions membres C++ marquées__cdecl
ou__fastcall
. Toutes les fonctions__stdcall
doivent avoir des prototypes.__vectorcall
- Spécifie la convention d’appel__vectorcall
pour toutes les fonctions, à l’exception des fonctions membres C++ marquées__cdecl
,__fastcall
ou__stdcall
. Toutes les fonctions__vectorcall
doivent avoir des prototypes.
Compiler en
Sélectionnez l’option de langue de compilation pour les fichiers sources. Définit /TC
, /TP
/interface/internalPartition
ou /exportHeader
options.
Choices
- Par défaut : option par défaut.
- Compiler en tant que code C (
/TC
) : compilez les fichiers sources spécifiés en tant que code C. Par défaut, les fichiers avec une.c
extension sont compilés en tant que C. - Compiler en tant que code C++ (
/TP
) : compilez les fichiers sources spécifiés en tant que code C++. Par défaut, tous les fichiers sources qui n’ont pas d’extension.c
,.ixx
.cppm
.h
ou non sont compilés en C++. - Compiler en tant que code de module C++ (
/interface
) : compilez les fichiers sources spécifiés en tant que code de module C++. Par défaut, les fichiers avec une extension ou.cppm
une.ixx
extension sont compilés en tant que code de module C++. - Compiler en tant que partition interne du module C++ (
/internalPartition
) : compilez les fichiers sources spécifiés en tant que partition interne du module C++. - Compiler en tant qu’unité d’en-tête C++ (
/exportHeader
) : compilez les fichiers sources spécifiés en tant qu’unité d’en-tête C++. Par défaut, les fichiers avec une.h
extension ou aucune extension sont compilés en tant qu’unités d’en-tête.
Désactiver des avertissements spécifiques
Désactivez les numéros d’avertissement spécifiés. Placez les numéros d’avertissement dans une liste délimitée par des points-virgules. Définit le /wd
<nombre.>
Fichier Include forcé
un ou plusieurs fichiers Include forcés. Définit le /FI
<nom.>
Fichier #using forcé
Spécifie un ou plusieurs fichiers #using forcés. Définit le /FU
<nom.>
Affichage des fichiers Include
Affiche la liste des fichiers include avec les résultats de la compilation. Définit /showIncludes
.
Utiliser des chemins complets
Utilisez des chemins complets dans les messages de diagnostic. Définit /FC
.
Omettre le nom de la bibliothèque par défaut
N’inclut pas les noms de bibliothèque par défaut dans les .obj
fichiers. Définit /Zl
.
Rapport d’erreurs du compilateur interne
Remarque
Cette fonction est déconseillée. À compter de Windows Vista, le rapport d’erreurs est contrôlé par les paramètres de rapport d’erreurs Windows (WER ).
Traiter des avertissements spécifiques comme des erreurs
Traite l’avertissement spécifique du compilateur comme une erreur où n est un avertissement du compilateur.
Options supplémentaires
Options supplémentaires.