C++17対応の『C++ポケットリファレンス』 第3版

2018年2月15日に、『C++ポケットリファレンス』の第3版が発売となります。

今回の改訂では、C++17 (ISO/IEC 14882:2017) に対応しています。

執筆関係のこと

執筆自体は2017年4月からはじめて、C++17がISOから発行されたらなるべく早く出版できるよう進めていました。

ツールとしては、執筆環境にGitHubのプライベートリポジトリ、細かい相談ごとにGitterを使用していました。

改訂の内容

C++17では大きな機能がいくつか追加されたため、章立てから見直しています。

  • エラーハンドリングの主要機能としてstd::optionalクラスが追加されたことから、例外の章を、エラーハンドリングの章に変更
  • ファイルシステムのライブラリが追加されたことから、入出力の章にその解説を追加。その代わりにロケール関係を削除

C++14までの機能で、重要度が高く、解説されていなかったリファレンスもいくつか追加しています。

その他、C++17関係の機能として、構造化束縛や追加の属性、if文やswitch文での初期化式、ラムダ式での*thisのコピーキャプチャ、std::variantクラス、文字列検索アルゴリズム、並列アルゴリズムなど多くの解説を追加しています。

締め

主要コンパイラであるGCC、Clang、Visual Studioなどの開発速度が早いこともあり、C++17の多くの機能がすでにユーザーが使える状態になっています。 より新しい機能を使いたい方やそれを周りに広めたい方のために、本書を役立てていただければ幸いです。