1

Visual Studio では、C++ キーワード、C++ パラメーター、C++ ローカル変数、関数名、マクロなどの表示項目のフォントと色をカスタマイズできます。これは、メニューの [ツール] -> [オプション] -> [フォント] を選択して行うことができます。そして色」。

設定ダイアログで、「C++ ローカル変数」と「C++ 変数」の 2 つの「表示項目」に戸惑います。

「C++ ローカル変数」が分かりやすいです。言う:

void f()
{
    int this_is_a_Cpp_Local_Variable;
}

C++ ローカル変数を好きなフォントと色に設定できます。

しかし、「C++ 変数」が何なのか理解できません。グローバル変数が基本型であるかユーザー定義型であるかに関係なく、それらがグローバル変数ではないことをテストして証明しました。

私の質問は: Visual Studio の「表示項目」の「C++ 変数」とは何ですか?

アップデート:

私のテストコードは次のとおりです。

#include <iostream>
#include <functional>

using namespace std;

class A
{
public:
    int n;
};

A a;

class B
{
public:
    B()
    {
        int v;
        a.n
    }
};

void f(A a)
{
    a.n;
}

int main()
{
    int v;
    A a;
}

vssettings:

<UserSettings>
    <ApplicationIdentity version="11.0"/>
    <ToolsOptions>
        <ToolsOptionsCategory name="Environment" RegisteredName="Environment"/>
    </ToolsOptions>
    <Category name="Environment_Group" RegisteredName="Environment_Group">
        <Category name="Environment_FontsAndColors" Category="{1EDA5DD4-927A-43a7-810E-7FD247D0DA1D}" Package="{DA9FB551-C724-11d0-AE1F-00A0C90FFFC3}" RegisteredName="Environment_FontsAndColors" PackageName="Visual Studio Environment Package">
            <PropertyValue name="Version">2</PropertyValue>
            <FontsAndColors Version="2.0">
                <Categories>
                    <Category GUID="{58E96763-1D3B-4E05-B6BA-FF7115FD0B7B}" FontName="Fixedsys Excelsior 3.01" FontSize="12" CharSet="1" FontIsDefault="No">
                        <Items/>
                    </Category>
                    <Category GUID="{75A05685-00A8-4DED-BAE5-E7A50BFA929A}" FontName="Fixedsys Excelsior 3.01" FontSize="12" CharSet="1" FontIsDefault="No">
                        <Items>
                            <Item Name="Literal" Foreground="0x000000FF" Background="0x01000001" BoldFont="No"/>
                            <Item Name="String" Foreground="0x000000FF" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppMacroSemanticTokenFormat" Foreground="0x000000FF" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppEnumSemanticTokenFormat" Foreground="0x000000FF" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppGlobalVariableSemanticTokenFormat" Foreground="0x000000FF" Background="0x00008000" BoldFont="No"/>
                            <Item Name="CppLocalVariableSemanticTokenFormat" Foreground="0x00000080" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppParameterSemanticTokenFormat" Foreground="0x00000000" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppTypeSemanticTokenFormat" Foreground="0x00FF0000" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppRefTypeSemanticTokenFormat" Foreground="0x00FF0000" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppValueTypeSemanticTokenFormat" Foreground="0x00FF0000" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppFunctionSemanticTokenFormat" Foreground="0x00000080" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppMemberFunctionSemanticTokenFormat" Foreground="0x00000080" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppStaticMemberFunctionSemanticTokenFormat" Foreground="0x00000080" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppClassTemplateSemanticTokenFormat" Foreground="0x00FF0000" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppGenericTypeSemanticTokenFormat" Foreground="0x00FF0000" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppFunctionTemplateSemanticTokenFormat" Foreground="0x00000080" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppNamespaceSemanticTokenFormat" Foreground="0x000000FF" Background="0x01000001" BoldFont="No"/>
                            <Item Name="CppLabelSemanticTokenFormat" Foreground="0x000000FF" Background="0x01000001" BoldFont="No"/>
                            <Item Name="VA X Brace Matching" Foreground="0x02000000" Background="0x02000000" BoldFont="Yes"/>
                        </Items>
                    </Category>
                    <Category GUID="{B36B0228-DBAD-4DB0-B9C7-2AD3E572010F}" FontName="Microsoft YaHei" FontSize="9" CharSet="1" FontIsDefault="No">
                        <Items>
                            <Item Name="Different content" Foreground="0x000014E5" Background="0x00FFFFFF" BoldFont="No"/>
                            <Item Name="Identical content" Foreground="0x00000000" Background="0x00FFFFFF" BoldFont="No"/>
                            <Item Name="Source Only" Foreground="0x00000000" Background="0x00FFFFFF" BoldFont="No"/>
                            <Item Name="Target Only" Foreground="0x00000000" Background="0x00FFFFFF" BoldFont="No"/>
                            <Item Name="Not Downloaded" Foreground="0x006D6D6D" Background="0x00FFFFFF" BoldFont="No"/>
                            <Item Name="Even Row Items" Foreground="0x00000000" Background="0x00FFFFFF" BoldFont="No"/>
                            <Item Name="Odd Row Items" Foreground="0x00000000" Background="0x00FFFFFF" BoldFont="No"/>
                        </Items>
                    </Category>
                    <Category GUID="{E0187991-B458-4F7E-8CA9-42C9A573B56C}" FontName="Fixedsys Excelsior 3.01" FontSize="12" CharSet="1" FontIsDefault="No">
                        <Items>
                            <Item Name="String" Foreground="0x000000FF" Background="0x01000001" BoldFont="No"/>
                        </Items>
                    </Category>
                    <Category GUID="{FF349800-EA43-46C1-8C98-878E78F46501}" FontName="Fixedsys Excelsior 3.01" FontSize="12" CharSet="1" FontIsDefault="No">
                        <Items/>
                    </Category>
                </Categories>
            </FontsAndColors>
        </Category>
    </Category>
</UserSettings>
4

1 に答える 1

1

ご覧のとおり、C++ プロジェクトのさまざまなタイプの変数が強調表示されています。これはカスタム カラー スキームを使用した Visual Studio 2012 です。

blue := local
green := global variable

イムグル

したがって、これは私の設定で強調表示されたコードです。

イムグル

これは、ローカル変数の背景色が赤のカラー設定です

イムグル

于 2013-10-01T13:50:52.737 に答える