2016-01-12

C++標準化委員会の文書のレビュー: P0100R1-P0136R1

今回も改訂版文書のレビューをしていく。改定前の文書のレビューは同番号の過去の記事を参照。

本の虫: C++標準化委員会の文書のレビュー: P0100R0-P0109R0

P0100R1: Comparison in C++

比較の強さ別にカスタマイゼーションポイントとなる関数を用意する提案。

比較には、同一比較と、順序比較がある。順序比較には、partial orderとweak orderとtotal orderがある。これまで、順序比較にはoperator <などの演算子が、その種類を問わず使われてきた。どの比較を提供できるかは、型により異なるので、比較ごとの方法を提供できる関数テンプレートを追加する。カスタマイズするには、これをオーバーロードすればよい。

template<typename T> bool partial_less(const T&,const T&);
template<typename T> bool weak_less(const T&,const T&);
template<typename T> bool total_less(const T&,const T&);

template<typename T> bool partial_unordered(const T&,const T&);
template<typename T> bool weak_equivalence(const T&,const T&);
template<typename T> bool total_equal(const T&,const T&);

P0112R1: Networking Library (Revision 7)

Boost.Asioをベースにしたネットワークライブラリの提案。

変更点は、io_serviceをio_contextに、wrap()をbind_executor()に改名。package()をuse_futureの関数呼び出し演算子に、const_buffers_1とmutable_buffers_1クラスの廃止。const_bufferとmutable_bufferが直接要件を満たすことに鳴った。const_bufferとmutable_bufferにdate()とsize()メンバー関数を追加。buffer_cast<>とbuffer_size()の代替案。

P0136R1: Rewording inheriting constructors (core issue 1941 et al)

継承コンストラクターの文面を書き直す提案。これにより継承コンストラクターの挙動が僅かに変わるそうだが、影響はほぼない。

ドワンゴ広告

そういえば、今年からドワンゴで勉強会にも使っているセミナールームは歌舞伎座タワーではなく、ADK松竹スクエアの13階に変更になっている。

ドワンゴは本物のC++プログラマーを募集しています。

採用情報|株式会社ドワンゴ

CC BY-ND 4.0: Creative Commons — Attribution-NoDerivatives 4.0 International — CC BY-ND 4.0

1 comment:

Anonymous said...

ネットワークライブラリの道は遠いですね。
ネットゲームは一回くらい作ってみたいですよ。