C/C ++開発のためのVisual Studioコードの力を解き放つための有用な拡張機能と構成例のガイド。そして、くそー、それはより良くなっています。拡張機能を使用すると、毎日の発展をサポートする本当に素晴らしいツールです。
このプロジェクトは、VSコードを使用したC/C ++開発のいくつかの拡張機能と例に関する概要を説明する必要があります。 VCSの作業を本当に改善する多くの拡張機能があります。それらのどれが本当に価値があるかを示し、それらを使用/統合する方法をいくつか示したいと思います。
ほとんどの場合、私はCmakeとLinuxを使用しています。したがって、主な焦点はこの組み合わせにあります。これを将来、Linux(WSL)用のWindows-Subsystemに拡張するかもしれません。
https://code.visualstudio.com/で最新のコードバージョンを入手できます。システム/ディストリビューションでサポートされているパッケージタイプをダウンロードしてインストールするだけです。
詳細な説明Linuxの下にインストールする方法は、こちらにあります。
VSコードをC ++、つまり言語サポート、デバッグなどに精通するには、市場で見つかったC/C ++拡張機能が必要です。アクティビティバーから拡張機能パネルを介してインストールするだけです。
VSコードでCMAKEプロジェクトを管理する方法は、Cmakeセクションにあります。 cmakeの使用に熱心でない場合は、https://code.visualstudio.com/docs/cpp/config-linuxを見ることができます。
いくつかのデバッグ関連のものは、デバッグセクションにあります。
VSコードには、テストを非常に快適に処理するためのいくつかの優れた拡張機能があります。詳細については、テストのドキュメントを参照してください。
Dockerセクションでは、VSコードからコンテナの構築、管理、実行に拡張機能を使用する方法について説明します。
現在のトピック:
devcontainer.jsonで構成します一部の拡張機能は、ドキュメント機能を大幅に強化できます。詳細については、ドキュメントセクションを参照してください。
リモート接続デバイス(RPIなど)のために開発している場合、リモート-SSH拡張機能は時間を節約します。地元での作業に慣れているように、VSコードを使用することができます。通信はSSHを介して行われます。したがって、証明書を介したAutologinも可能です。
また、リモートマシンに接続されている場合、ポート転送を構成する可能性があります。

開発中にオンザフライ静的分析を使用するには、静的分析のドキュメントを参照してください。
コードのフォーマットとクリーンアップのドキュメントには、コードの一般的な自動クリーンアップとフォーマットを行うためのいくつかのツールが表示されます。
カバレッジ計装でCMAKEビルドをセットアップし、カバレッジ結果を評価するには、カバレッジのドキュメントを参照してください。
Clang Sanitizersの統合の詳細については、Clang Sanitizerの文書に記載されています。
GitドキュメントでGitを扱っている有用な拡張機能をご覧ください。
Githubと一緒にGithubを使用する方法の概要は、GitHub統合ドキュメント内にあります。
さまざまな方法であなたの努力を活用する、一般的にサポートする拡張機能がいくつかあります。開発ワークフローを強化できる他のサポート拡張機能の詳細については、拡張機能のドキュメントを参照してください。
多くの場合、デバッグの目的でログファイルを扱う必要があります。 Notepad ++からの分析プラグインを知っている場合は、テキストPower Tools Extensionを楽しむことができます。この素晴らしいプラグインを使用すると、通常の表現を使用して、より大きなテキストファイルをフィルタリングすることが可能です。さらに、awkのような抽出でデータを再構築できます。
ログファイルにハイライトを追加するもう1つの素晴らしい拡張機能は、LogFile Highligherです。コスミー化可能であり、ログを掘るのをサポートするための素晴らしい機能がたくさんあります。
基本的なコードショートカットとコードのショートカットはこちらにあります
これは、特にタスクのリファクタリング/名前を変更するための非常にクールな機能です。そのため、コマンドパレット( Ctrl+Shift+P )を開いて使用して使用し、トグル列選択モードを実行することをお見逃しなく。
cmake-variants.yamlさまざまなコンパイラインストゥルメンツをセットアップし、一般的にフラグを変更するための優れたツールです。しかし、現在1つの問題があります。異なる複合バリアントで同じcmake定義を使用する場合、最後のバリアントのみが撮影されます。たとえば、カバレッジと住所消毒剤を有効にする場合、同じCMAKE_CXX_FLAGS定義を共有するため、そのうちの1つだけが機能します。
もう1つの欠点は、CIパイプライン内の設定の使用です。そのため、追加のcmakeを使用すると、ファイルがより良いアプローチかもしれません。その後、バリアント定義を介してこれをアクティブにすることができ、パイプラインでも使用できます。私がそれをする時間があれば、私は例を提供します。