Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U kunt EditorConfig-bestanden toevoegen aan uw project om C++-opmaak te configureren om een consistente codestijl af te dwingen voor iedereen die aan het project bijdraagt. Zowel Visual Studio als Visual Studio Code hebben ingebouwde EditorConfig-ondersteuning voor elk van de algemene Visual Studio C++-opmaakinstellingen. De EditorConfig-instellingen worden opgeslagen in een .editorconfig bestand. Wanneer dat bestand aanwezig is in uw project, heeft het voorrang op de Visual Studio opmaakinstellingen.
Dit document bevat alle opmaakinstellingen voor EditorConfig C++ die worden ondersteund door Visual Studio en Visual Studio Code.
C++ bevat aanvullende .editorconfig instellingen die geen opmaakinstellingen zijn. Deze instellingen worden gedocumenteerd met de functies die ze configureren:
-
Opschoningsinstellingen (
cpp_include_cleanup_*encpp_sort_includes_*) zijn gedocumenteerd in C/C++ Opschonen in Visual Studio. -
IntelliSense-instellingen voor
#includevoltooiing (cpp_includes_use_forward_slashencpp_includes_style) worden beschreven in Opties voor C/C++ > IntelliSense configureren>.
Voor meer informatie over:
- Als u een EditorConfig-bestand in Visual Studio gebruikt, raadpleegt u Consistente coderingsstijlen definiëren met EditorConfig.
- Handmatig een EditorConfig-bestand maken op basis van instellingen voor clang-opmaak, zie clangformat. Wijzig de naam van dat bestand
.editorconfigen sla het op in uw project.
C++ opmaakconventies
C++ opmaak EditorConfig-instellingen worden voorafgegaan door cpp_. Hier volgt een voorbeeld van hoe een .editorconfig bestand eruit kan zien:
[*.{c++,cc,cpp,cxx,h,h++,hh,hpp,hxx,inl,ipp,tlh,tli}]
cpp_indent_case_contents_when_block = true
cpp_new_line_before_open_brace_namespace = same_line
In de rest van dit artikel worden alle opmaakinstellingen voor EditorConfig C++ vermeld die worden ondersteund door Visual Studio en VS Code.
Instellingen voor inspringing
Accolades laten inspringen
- Naam:
cpp_indent_braces - Waarden:
true,false
Elke regel relatief laten inspringen
- Naam:
cpp_indent_multi_line_relative_to - Waarden:
-
outermost_parenthesis- Wanneer een nieuwe regel wordt getypt, wordt deze ingesprongen in verhouding tot het buitenste haakje open. -
innermost_parenthesis- Wanneer een nieuwe regel wordt getypt, wordt deze relatief ingesprongen ten opzichte van het binnenste open haakje. -
statement_begin- Wanneer een nieuwe regel wordt getypt, wordt deze inspringing relatief tot het begin van de huidige instructie.
-
Lijn binnen haakjes nieuwe lijnen uit wanneer ik ze typ
- Naam:
cpp_indent_within_parentheses - Waarden:
-
align_to_parenthesis- Inhoud uitlijnen op haakje openen. -
indent- Nieuwe regels laten inspringen.
-
Gebruik in bestaande code niet de instelling voor het uitlijnen van nieuwe regels tussen haakjes
- Naam:
cpp_indent_preserve_within_parentheses - Waarden:
true,false
Inhoud van hoofdletters inspringen
- Naam:
cpp_indent_case_contents - Waarden:
true,false
Inspringingslabels
- Naam:
cpp_indent_case_labels - Waarden:
true,false
Accolades laten inspringen na een case-instructie
- Naam:
cpp_indent_case_contents_when_block - Waarden:
true,false
Accolades van lambdas laten inspringen die worden gebruikt als parameters
- Naam:
cpp_indent_lambda_braces_when_parameter - Waarden:
true,false
Positie van goto-labels
- Naam:
cpp_indent_goto_labels - Waarden:
-
one_left- Eén inspringing links -
leftmost_column- Naar de meest linkse kolom gaan -
none- Laat ingesprongen
-
Positie van preprocessorrichtlijnen
- Naam:
cpp_indent_preprocessor - Waarden:
-
one_left- Eén inspringing links -
leftmost_column- Naar de meest linkse kolom gaan -
none- Laat ingesprongen
-
Toegangsaanduidingen laten inspringen
- Naam:
cpp_indent_access_specifiers - Waarden:
true,false
Inhoud van naamruimte laten inspringen
- Naam:
cpp_indent_namespace_contents - Waarden:
true,false
Inspringing van opmerkingen behouden
- Naam:
cpp_indent_preserve_comments - Waarden:
true,false
Instellingen voor nieuwe regels
Positie van open accolades voor naamruimten
- Naam:
cpp_new_line_before_open_brace_namespace - Waarden:
-
new_line- Naar een nieuwe regel gaan -
same_line- Houd dezelfde regel aan, maar voeg een spatie toe vóór -
ignore- Niet automatisch verplaatsen
-
Positie van open accolades voor typen
- Naam:
cpp_new_line_before_open_brace_type - Waarden:
-
new_line- Naar een nieuwe regel gaan -
same_line- Houd dezelfde regel aan, maar voeg een spatie toe vóór -
ignore- Niet automatisch verplaatsen
-
Positie van open accolades voor functies
- Naam:
cpp_new_line_before_open_brace_function - Waarden:
-
new_line- Naar een nieuwe regel gaan -
same_line- Houd dezelfde regel aan, maar voeg een spatie toe vóór -
ignore- Niet automatisch verplaatsen
-
Positie van open accolades voor besturingsblokken
- Naam:
cpp_new_line_before_open_brace_block - Waarden:
-
new_line- Naar een nieuwe regel gaan -
same_line- Houd dezelfde regel aan, maar voeg een spatie toe vóór -
ignore- Niet automatisch verplaatsen
-
Positie van open accolades voor lambdas
- Naam:
cpp_new_line_before_open_brace_lambda - Waarden:
-
new_line- Naar een nieuwe regel gaan -
same_line- Houd dezelfde regel aan, maar voeg een spatie toe vóór -
ignore- Niet automatisch verplaatsen
-
Bereikaccolades op afzonderlijke regels plaatsen
- Naam:
cpp_new_line_scope_braces_on_separate_lines - Waarden:
true,false
Voor lege typen verplaatst u accolades naar dezelfde lijn als het openen van accolades
- Naam:
cpp_new_line_close_brace_same_line_empty_type - Waarden:
true,false
Voor lege functieteksten verplaatst u accolades naar dezelfde lijn als het openen van accolades
- Naam:
cpp_new_line_close_brace_same_line_empty_function - Waarden:
true,false
Plaats 'catch' en vergelijkbare trefwoorden op een nieuwe regel
- Naam:
cpp_new_line_before_catch - Waarden:
true,false
Plaats 'else' op een nieuwe regel
- Naam:
cpp_new_line_before_else - Waarden:
true,false
Plaats 'while' in een do-while-lus op een nieuwe regel
- Naam:
cpp_new_line_before_while_in_do_while - Waarden:
true,false
Afstandsinstellingen
Afstand tussen functienamen en haakjes van argumentlijsten openen
- Naam:
cpp_space_before_function_open_parenthesis - Waarden:
-
insert- Een spatie invoegen -
remove- Spaties verwijderen -
ignore- Geen spaties wijzigen
-
Spatie invoegen tussen haakjes van een lijst met argumenten
- Naamwaarden
cpp_space_within_parameter_list_parentheses:true,false
Spatie tussen haakjes invoegen wanneer de lijst met argumenten leeg is
- Naam:
cpp_space_between_empty_parameter_list_parentheses - Waarden:
true,false
Ruimte invoegen tussen trefwoord en haakje openen in besturingsstroominstructies
- Naam:
cpp_space_after_keywords_in_control_flow_statements - Waarden:
true,false
Ruimte invoegen tussen haakjes van een besturingselementinstructie
- Naam:
cpp_space_within_control_flow_statement_parentheses - Waarden:
true,false
Spatie invoegen voordat haakjes van lambda-argumentlijsten worden geopend
- Naam:
cpp_space_before_lambda_open_parenthesis - Waarden:
true,false
Ruimte invoegen tussen haakjes van een C-stijl cast
- Naam:
cpp_space_within_cast_parentheses - Waarden:
true,false
Spatie invoegen na haakje sluiten van C-stijl cast
- Naam:
cpp_space_after_cast_close_parenthesis - Waarden:
true,false
Spatie invoegen tussen haakjes van een haakje expressie
- Naam:
cpp_space_within_expression_parentheses - Waarden:
true,false
Spatie invoegen voordat u een accolade van blokken opent
- Naam:
cpp_space_before_block_open_brace - Waarden:
true,false
Spatie tussen lege accolades invoegen
- Naam:
cpp_space_between_empty_braces - Waarden:
true,false
Ruimte invoegen voordat u accolades van uniforme initialisatie- en initialisatielijsten opent
- Naam:
cpp_space_before_initializer_list_open_brace - Waarden:
true,false
Ruimte invoegen binnen accolades van uniforme initialisatie- en initialisatielijsten
- Naam:
cpp_space_within_initializer_list_braces - Waarden:
true,false
Spaties binnen uniforme initialisatie- en initialisatielijsten behouden
- Naam:
cpp_space_preserve_in_initializer_list - Waarden:
true,false
Ruimte invoegen voordat vierkante haken worden geopend
- Naam:
cpp_space_before_open_square_bracket - Waarden:
true,false
Spatie invoegen tussen vierkante haken
- Naam:
cpp_space_within_square_brackets - Waarden:
true,false
Spatie invoegen vóór lege vierkante haken
- Naam:
cpp_space_before_empty_square_brackets - Waarden:
true,false
Ruimte tussen lege vierkante haken invoegen
- Naam:
cpp_space_between_empty_square_brackets - Waarden:
true,false
Vierkante haken groeperen voor multidimensionale matrices samen
- Naam:
cpp_space_group_square_brackets - Waarden:
true,false
Ruimte invoegen binnen vierkante haken voor lambdas
- Naam:
cpp_space_within_lambda_brackets - Waarden:
true,false
SpaceBetweenEmptyLambdaBrackets
- Naam:
cpp_space_between_empty_lambda_brackets - Waarden:
true,false
Spatie voor komma's invoegen
- Naam:
cpp_space_before_comma - Waarden:
true,false
Spatie invoegen na komma's
- Naam:
cpp_space_after_comma - Waarden:
true,false
Spaties voor en na lidoperators verwijderen
- Naam:
cpp_space_remove_around_member_operators - Waarden:
true,false
Spatie invoegen vóór dubbele punt voor basis in typedeclaraties
- Naam:
cpp_space_before_inheritance_colon - Waarden:
true,false
Spatie vóór dubbele punt invoegen voor constructors
- Naam:
cpp_space_before_constructor_colon - Waarden:
true,false
Ruimte verwijderen vóór puntkomma's
- Naam:
cpp_space_remove_before_semicolon - Waarden:
true,false
Spatie invoegen na puntkomma's
- Naam:
cpp_space_after_semicolon - Waarden:
true,false
Spaties tussen unaire operatoren en hun operanden verwijderen
- Naam:
cpp_space_remove_around_unary_operator - Waarden:
true,false
Afstand voor binaire operators
- Naam:
cpp_space_around_binary_operator - Waarden:
-
insert- Spaties voor en na binaire operatoren invoegen. -
remove- Verwijder spaties rond binaire operators. -
ignore- Wijzig geen spaties rond binaire operators.
-
Afstand voor toewijzingsoperatoren
- Naam:
cpp_space_around_assignment_operator - Waarden:
-
insert- Spaties invoegen rond toewijzingsoperatoren. -
remove- Verwijder spaties rond toewijzingsoperatoren. -
ignore- Wijzig geen spaties rond toewijzingsoperatoren.
-
Aanwijzer/verwijzingsuitlijning
- Naam:
cpp_space_pointer_reference_alignment - Waarden:
-
left- Links uitlijnen. -
center- Centreren. -
right- Rechts uitlijnen. -
ignore- Laat ongewijzigd.
-
Afstand voor voorwaardelijke operators
- Naam:
cpp_space_around_ternary_operator - Waarden:
-
insert- Spaties invoegen rond voorwaardelijke operators. -
remove- Verwijder spaties rond voorwaardelijke operators. -
ignore- Wijzig geen spaties rond voorwaardelijke operators.
-
Opties voor terugloop
Opties voor terugloop voor blokken
- Naam:
cpp_wrap_preserve_blocks - Waarden:
-
one_liners- Geen codeblokken van één regel verpakken. -
all_one_line_scopes- Verpakt codeblokken niet wanneer de accolades worden geopend en gesloten op de volgende regel. -
never- Pas altijd nieuwe regels toe voor blokken.
-