Visual Studio での C++ コードの読み取りと理解

C++ コード エディターと Visual Studio IDE ではコーディングの補助機能の多くが提供されています。 いくつかは C++ に固有で、いくつかは基本的にすべての Visual Studio の言語と同じです。 共有機能の詳細については、コード エディターとテキスト エディターでのコードの記述に関するページを参照してください。

色付け

Visual Studio では、言語キーワード、型名、変数名、関数パラメーター、文字列リテラルなどのシンボルの種類を区別するため、構文要素が色付けされます。

Screenshot showing code colorization in the editor. Keywords are shown in different colors such as blue for if, while and green for comments

未使用コード (#if 0 の下のコードなど) はより薄い色になっています。

Screenshot showing inactive code in the editor, which appears faded compared to active code.

クイック起動で「フォント」と入力して、[フォントおよび色] を選択すると、色をカスタマイズできます。 [フォントおよび色] ダイアログで [C/C++] オプションまで下にスクロールして、カスタム フォントや色を選択します。

アウトライン

ソース コード ファイルの任意の場所を右クリックし、[アウトライン] を選択してコード ブロックやカスタムの領域を折りたたんだり展開したりすることで、興味のあるコードだけを参照しやすくします。 詳細については、「アウトライン」を参照してください。

Screenshot of the outlining window shows the body of classes collapsed. Options for Collapse to Definitions, Toggle All Outlining, etc. are visible.

中かっこ (' {' または '}') の前にカーソルを配置すると、それに対応する反対側の中かっこがエディターで強調表示されます。

その他のアウトラインのオプションは、メイン メニューの [編集]>[アウトライン] の下にあります。

[行番号]

行番号をプロジェクトに追加するには、 [ツール]>[オプション]>[テキスト エディター]>[すべての言語]>[全般] の順に移動するか、クイック起動 (Ctrl + Q) で "行番号" を検索します。 行番号はすべての言語で設定することも、C++ などの特定の言語のみで設定することもできます。

スクロールとズーム

エディターで Ctrl キーを押しながらマウス ホイールをスクロールすることで、ズーム インまたはズーム アウトすることができます。 左下隅のズーム設定を使用してズームすることもできます。

Screenshot of the Zoom Control in the lower left of the screen. It's a dropdown with various zoom options like 133%.

スクロール バーのマップ モードでは、現在の場所を離れずに、迅速にスクロールしてコード ファイルを参照することができます。 コード マップ上の任意の場所をクリックすると、その場所に直接移動することができます。

Screenshot of the Code Map which shows an outline of the entire file on the right and a window displaying the code from the selected part of the map.

マップ モードをオンにするには、メイン ツール バーでクイック起動の検索ボックスに「マップ」と入力して、 [スクロール マップ モードを使用します] を選択します。 詳細については、「方法 : スクロール バーのカスタマイズによるコードの追跡」を参照してください。

マップ モードがオフの場合でも、スクロール バーにはファイルに行った変更が強調表示されます。 緑色は変更が保存されたことを示し、黄色は変更が保存されていないことを示します。

クイック ヒントとパラメーター ヒント

任意の変数、関数、または他のシンボルをポイントすると、それに関する情報を得ることができます。これには、宣言とその直前に配置されている任意のコメントが含まれます。

Screenshot of the Quick Info tooltip displaying the definition of a function that the user is hovering over in the code window.

クイック ツールヒントには、オンラインで検索リンクがあります。 [ツール]>[オプション]>[テキスト エディター]>[C++]>[ビュー] の順に移動して、検索プロバイダーを指定します。

コード内にエラーがある場合、それをポイントすると、クイック ヒントにエラー メッセージが表示されます。 エラー メッセージは、[エラー一覧] ウィンドウでも確認できます。

Screenshot of the Quick Info tooltip showing the error associated with a code squiggle.

Screenshot showing the Quick Info tooltip in Visual Studio 2017.

コード内にエラーがある場合、それをポイントすると、クイック ヒントにエラー メッセージが表示されます。 エラー メッセージは、[エラー一覧] ウィンドウでも確認できます。

Screenshot of the Quick Info tooltip showing the error associated with a code squiggle.

関数を呼び出すと、パラメーター ヒントにパラメーターの型と予想される順序が示されます。

Screenshot of parameter info showing the parameters for the function resize on vector v. The parameter info is: const size_t _Newsize, const int & _Val.

定義をここに表示

変数または関数宣言をポイントして右クリックし、[定義をここに表示] を選択すると、現在の場所から移動することなく、その定義のインライン ビューを表示できます。 詳細については、[定義をここに表示] (Alt + F12) に関するページを参照してください。

Screenshot of the drop-down that appears when you right-click a function. Peek Definition appears in the menu along with the shortcut Alt + F 12.

F1 ヘルプ

任意の型、キーワード、または関数の上または直後にカーソルを置き、F1 キーを押すと、Microsoft Learn 上の関連するリファレンス トピックに直接移動します。 F1 キーは、エラー リストや多くのダイアログ ボックスの項目でも機能します。

クラス ビュー

クラス ビューでは、すべてのコード シンボルの検索可能なツリーのセットと、その範囲および親/子階層がプロジェクトごとに整理されて表示されます。 クラス ビューに表示する内容は、[クラス ビュー設定] (ウィンドウの上部にある歯車のボックス アイコンをクリック) から構成できます。

Screenshot of the Class View window displaying the classes in the project such as CipherFactory, FilterTester, and so on.

インクルード ファイルのグラフを生成

プロジェクト内のコード ファイルを右クリックし、[インクルード ファイルのグラフを生成] を選択して、他のファイルによって含まれているファイルのグラフを表示します。

Screenshot of a graph of include files. The graph shows that NAMSPACE DLL .CPP includes Namespace DLL .h, which includes V_10 .H, among other files.

呼び出し階層の表示

関数呼び出しを右クリックし、呼び出すすべての関数、および呼び出されるすべての関数の再帰的な一覧を表示します。 一覧内の各関数は、同じ方法で展開できます。 詳細については、呼び出し階層に関するページを参照してください。

Screenshot of the Call Hierarchy window which shows calls to and from Floating_to_wstring(). For example, to_wstring() calls Floating_to_wstring().

参照

コードの編集とリファクタリング (C++)
Visual Studio で C++ コード間を移動する
Live Share for C++ を使用しての共同作業