3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

2026 Annual C++ Developer Survey を眺めてみる

3
Posted at

標準C++財団 (Standard C++ Foundation) という組織は、 C++ 開発者へのアンケートを毎年実施しています。2026年の調査結果が公開されていたので、個人的な感想も交えつつ見ていきます。

PDFへのリンクは以下。

公開されているのは Lite 版という要約版です。回答者の個別の書き込みを全て含む詳細版 (145ページ) は、C++ 標準化委員会や C++ 製品のベンダーに送付されるとのことです。

1. C++をどこで使っているか

1_where-you-yse.png

やはり仕事が多いようです。

以降も同様ですが、複数回答できる質問については合計が 100% を超えることがあります。

2. 経験年数について

2_year-of-experience.png

上段は「C++の経験が何年あるか」、後段は「他の言語も含めるとプログラミング経験が何年あるか」というもの。いずれも20年以上という回答が最多でした。

これについては、 C++ の開発者の高齢化が進んでいるという見方と、このアンケートの回答者が C++ 上級者に偏っているという見方ができます。個人的には後者だと思いたいところです。

3. どのプラットフォーム用に開発しているか

3_what-platform.png

最多は Windows desktop (67.3%)、それに Linux desktop (58.9%) や Linux server (51.3%)、組込みシステム (33%) が並びます。3割以上が組込みシステムを挙げているのは、C++ならではという感じですね。

4. どのようなプロジェクトの仕事をしているか

4_types-of-project-1.png

4_types-of-project-2.png

コンパイラやエディタなどの開発者ツールが1位で、それにハードウェアやIOT、ゲームが続きます。比較的システム寄り・低レイヤ寄りの領域が目立ちます。

1位が開発者ツールというのを見ると、C++ の標準化コミュニティに近い人たちが多く回答しているのではないかと思います。経験年数の質問で 20年以上という回答が多いのも、こういう理由があるのかもしれません。

5. ライブラリの管理をどうしているか

5_library_management.png

1位が「ライブラリのソースコードごとビルドに含めている」、2位が「ライブラリの指示に従って別途コンパイルする」、3位が「aptなどのシステムのパッケージマネージャーを使う」という回答です。 pip や cargo のようなパッケージマネージャーが上位に来ないあたりに、C++ エコシステムの難しさを感じます。

パッケージマネージャーとしては、 vcpkg が7位 (21.8%)、 Conan が9位 (17.5%) にいます。上位の回答でないとはいえ、2割以上の人はちゃんとパッケージマネージャーを使っていると言えそうです (他の言語に比べたら少ないでしょうけど…)。

vcpkg と Conan の人気は拮抗しているようで、順位は年によって入れ替わります。過去5年の回答を見ると、2021年は Conan, 2022-2023年は vcpkg, 2024-2025年は Conan の方が上でした。

筆者個人としては vcpkg の方が使いやすいと感じます。

6. どのビルドツールを使っているか

6_build-tool-1.png

6_build-tool-2.png

CMake が圧倒的!

「3. どのプラットフォーム用に開発しているか」では Windows Desktop が1位 (67.3%) だったのにも関わらず、この質問では MSBuild と回答した人が 33.5% に留まります。Make も 30.7% ですし、現代の C++ 開発はみんな CMake を使うようになったんだな、と思わされます。

2位に Ninja がいますが、これは Ninja 単体ではなく、 CMake や Meson から使う人が殆どかなと思います。複数回答できる質問なので、 CMake + Ninja, CMake + MSBuild のような回答の仕方をしている人も多そうです。

7. 現在のプロジェクトではどのC++バージョンを使っているか

7_cpp-version.png

現在のプロジェクトにおいて、どのバージョンの C++ を使うことが許されているかという質問。青いバーは「全面的に使用可」、赤いバーは「部分的に使用可」、紫のバーは「使えない」を表します。

これを見ると、C++17 までは多くのプロジェクトで使えると言えそうです。 C++20 以降になると「使えない」や「部分的に使用可」が多くなります。もちろん現実には、 C++03 や C++11 を使っているというプロジェクトもありますが。

8. C++のコーディングにAIをどのくらい使っているか

8_ai-cpp-coding-task-1.png

8_ai-cpp-coding-task-2.png

8_ai-cpp-coding-task-3.png

質問 8 からは AI 関連の質問が続きます。AI関連の項目は 2025 年から追加されており、昨今の流れを感じさせられます。

質問8は「新規コードを書く」や「テストを書く」といった各タスクについて、AIを使う頻度を尋ねるものです。タスクによって度合いは変わるものの、いずれも Never (使わない) が最多でした。

AI をよく使うという回答が多いのは「新規コードを書く (Writing new code)」、 AIを使わないという回答が多いのはパフォーマンスの問題の特定 (Identifying performance issue) のようです。パフォーマンス関連はたしかに、AIが苦手とする領域の一つだと思います。

9. C++のコーディングにAIを使う際にどのような問題や障壁があるか

9_ai-issues.png

「AIが生成したコードが誤っている」「出力を信頼できない」「関連するコンテキストの理解不足」などが挙げられています。

この質問については、「その他」回答の中身をAIが要約したものが付いています。それによると、

  • 主に障壁として挙げられているのは、ポリシーやセキュリティ上の制約、倫理的・環境的な懸念、出力品質への不信感。

  • C++ に特有の問題として、AIは大規模プロジェクトや複雑なビルドシステム、マクロ、生成コード、正確性、モダンC++のイディオム、生成物のレビューや修正コストに苦戦しているという指摘が繰り返し見られる。

  • 特筆すべき点として、一般的な「その他」回答と比べて、異常に強い否定的感情が含まれていることが挙げられる。例として「非倫理的」「ゴミ」「有害」などの表現が見られる。これは単にAIツールに懐疑的というだけでなく、積極的に反対している層が存在することを示唆している。

とのこと。感情的な反応はともかくとして、C++特有の難しさはあるだろうなと思います。ビルドシステムの問題、 include 依存やマクロ、テンプレートによる静的解析の難しさ、プロジェクトごとの歴史的事情などは、AIにも難しそうに思います。

10. 現在または最近のプロジェクトで使っているコーディング用のAIツールは?

10_coding_ai_1.png

10_coding_ai_2.png

一般的に使われているものが上位に来ます。

11. 現在または最近のプロジェクトで使っている汎用のAIツールは?

11_ai_general.png

ChatGPTが人気。

12. C++開発者として AI が生産性を高めていると思うか?もしそうであれば、どう寄与しているか?

12_ai_productivity.png

この質問はAIが回答を要約しています。調べものやドキュメンテーション、ボイラープレートや小さなユーティリティの作成、テスト、既存コードの理解など、一般的に言われているような内容が並びます。

13. 現在または最近のプロジェクトにおいて、C++以外にどのような言語や環境を使っているか

13_other-langs-1.png

13_other-langs-2.png

1位は Python。次いで C, Bash, C#, JavaScript などが並びます。

Rust を挙げた人が 20.6% いるのは C++ 開発者らしいところだなと思います。例えば JavaScript や Python がメインの開発者に同じ質問をしたら、 Rust を挙げる人の割合はもっと低いと思います。

他には Lua があるのも C++ 開発者らしい回答かもしれません。

14. どの IDE を使っているか

14_ide-1.png

14_ide-2.png

14_ide-3.png

14_ide-4.png

VS Code, Visual Studio, vi/Vim などが人気。

15. どのコンパイラを使っているか

15_compiler.png

GCC, MSVC, Clang がトップ。

16. C++言語またはライブラリ・ツールについて何かを即座に変える力を持っていたら、何を変えたいか?それは日々の仕事にどう役立つか?

16_power.png

これは願望的なもの。過去の調査では If you could wave a magic wand and change one thing about ... (もし魔法の杖で C++ 関連の何かを一つだけ変えられるとしたら~) という表現を使っていたりします。

最も多い回答としては、標準化されたパッケージマネージャー、C++20 のモジュール機能への置き換え、ビルド時間の削減、安全性の強化などが挙げられます。新機能の追加よりも、C++の開発体験を良くするための改善を求めるものが多いように思います。

個人的には 8. の「診断や静的解析、ツール回りの強化」が欲しいところです。

17. C++ について考える際、どの組織がもっとも頭に浮かぶか?それはなぜか?

17_organization.png

組織でなく Web ページですが、日本の開発者だと cpprefjp にお世話になっている人が多いんじゃないかなと思います。

終わりに

後半はやや駆け足でしたが、調査結果を簡単に紹介してみました。世の C++ 開発者はこんなことを考えているんだな、というのを知るきっかけになればと思います。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?