ニュース
» 2020年12月09日 17時00分 公開

Gitがソース管理のデフォルトに:Microsoft、「Visual Studio 2019 バージョン16.8」を正式リリース

Microsoftは「Visual Studio 2019 バージョン16.8」の一般提供を開始した。Git管理やC++対応、IntelliCode、.NET、XAML、Webツールなどに対して、多くの機能強化を施した。

[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Microsoftは2020年11月10日(米国時間)、統合開発環境(IDE)の最新版「Visual Studio 2019 バージョン16.8」の一般提供を開始した。Git管理やC++対応、IntelliCode、.NET、XAML、Webツールなどに対して、多くの機能強化を施した。主な改良点は次の通り。

Git管理の生産性を向上

 デフォルトのソース管理プロバイダーを、TFVC(Team Foundation Version Control)からGitへと変更した。[Git]メニューからリポジトリを作成、複製したり、開いたりできる。統合されたGitツールウィンドウを使って、コード変更のコミットやプッシュ、ブランチの管理、リモートリポジトリの最新状態の維持、マージの衝突の解決などができる。

Git管理の生産性が向上した(出典:Microsoft、クリックで再生)

C++20機能のサポートを強化

 C++の次期標準である「C++20」対応も進んだ。「/std:c++latest」ヘッダを用いることで、C++20の主要機能を全て利用できる。

 コンパイラや標準ライブラリ、IDEを改善しており、例えば同じプロジェクトで「モジュール」「コルーティン」、一部の「範囲」を使用できる。

 C++20コルーティンを「/std:c++latest」と「<coroutine>」ヘッダでサポートした。従来の動作は「<experimental/coroutine>」と「/await switch」でサポートしていた。ヘッダユニットと実験的なMSBuildのサポートによって、モジュールの依存関係を自動的に解決できるようになった。

 C++の範囲ベースのアルゴリズムは大部分がサポートされているものの、範囲関連の全機能が利用できるまでには至っていない。

 IntelliSenseも、C++20の「<concepts>」ヘッダと「<ranges>」ヘッダ、概念の定義の名前変更、参照をサポートするようになった。

IntelliSenseがC++20に対応した(出典:Microsoft

STL関連の機能を強化し最適化した

 Standard Template Library(STL)もC++20範囲機能の多くをサポートした。STLの他の機能強化としては、「std::atomic_ref」「std::midpoint and std::lerp」「std::execution::unseq」の完全なサポートや、「std::reverse_copy」の最適化などがある。

 条件付きのトリビアルな特殊メンバ関数もMicrosoft Visual C++(MSVC)でサポートされるようになった。

C17機能をサポート

 C対応も改善した。C11とC17の全ての必須機能は、「/std:c11」スイッチと「/std:c17」スイッチを使うことで対応できる。これらの機能には次の内用が含まれる。

  • _Pragma
  • restrict
  • _Noreturnと<stdnoreturn.h>
  • _Alignas、_Alignof、<stdalign.h>
  • _Genericと<tgmath.h>のサポート

 なお、オプション機能はサポートされていない。

リンク時間の短縮

 C++を用いた開発の生産性を高める多数の改善を施した。

 マルチスレッドでのpdb(プログラムデータベース)の作成により、「/debug:full」リンクのパフォーマンスが向上した。幾つかの大規模なアプリケーションや大規模なゲーム開発(AAAランク)では、リンクが2〜4倍高速になっている。

CMakeの新しいプロファイリング機能を利用できる

 Visual Studioに付属するCMakeのバージョンがCMake 3.18にアップグレードされた。これにより、CMakeの新しいプロファイリング機能が利用できるようになった。

Linuxコアダンプのデバッグが容易に

 Visual StudioからリモートLinuxシステムやWSL上で、Linuxコアダンプを直接デバッグできるようになった。

Linuxコアダンプのデバッグ管理の生産性が向上した(出典:Microsoft

 Linuxプロジェクトで見つからないビルドツールがある場合、ツールバーに警告が表示されて、不足しているツールがエラー一覧に明記されるようになった。

改善された警告メッセージ(出典:Microsoft
改善されたエラー報告(出典:Microsoft

 加えて、Visual Studioデバッガはchar8_t をサポートした。

IntelliSenseコードリンターが使いやすく

 コードをエディタに入力する際にリンターと修正を使用できるようになった。算術オーバーフローや初期化されていないローカル変数、整数除算の結果をfloatに変換するといった警告や修正を取得できるようになった。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。