2019-10-01から1ヶ月間の記事一覧

[C++]コンセプトの5景

C++20にてついに導入されたコンセプト、書け方にムラがあるので少し整理してみます。 1. typenameの代わりに 2. 前置requires節 3. 後置requires節 ※関数のみ 4. autoによる簡略構文 ※関数のみ 5. 1と2(or 3) 4と3 全部盛り 参考文献 謝辞 1. typenameの代わ…

[C++]Deprecating volatile を見つめて

※この記事はC++20を相談しながら調べる会 #3の成果として書かれました。 C++20より、一部のvolatileの用法が非推奨化されます。提案文書は「Deprecating volatile」という壮大なタイトルなのでvolatileそのものが無くなるのかと思ってしまいますがそうではあ…

[C++]volatile修飾子についての考察

※この記事はC++20を相談しながら調べる会 #3の成果として書かれました。 P1152R4 : Deprecating volatileを読み解く過程に生じたvolatileについての調査(脱線)メモです。ほぼ文章です。 C++におけるvolatileの効果 マルチスレッドとvolatile 用途と副次的…

[C++]構造化束縛の動作モデルとラムダキャプチャ

一部のコンパイラでは構造化束縛宣言で導入された変数をラムダ式によってキャプチャすることができません。 実は、厳密に規格にのっとればC++17ならば出来ない、C++20からはできる、が正しい動作になります。 ただ、規格を眺めてもC++17でできず、C++20でき…