2017-08-01から1ヶ月間の記事一覧
Java 9では1文字アンダースコア(_)はキーワード(keyword)に変更され、変数名などに利用するとコンパイルエラーになる。Java 8以前は非推奨の識別子(identifier)であり、コンパイル時の警告メッセージにとどまっていた。 class UAAK { public static void mai…
C++2a(C++20)で導入予定のDesignated Initialization(指示付きの初期化)ついてメモ。C99での同一言語機能をベースとするが、一部機能制限された形でC++に導入される。 // C++2a(C++20) struct Point { int x, y; }; void f(Point); f({ .x = 100, .y = 50 …
C++1z(C++17)標準ライブラリに追加されるstd::launder関数テンプレートについて。メモリ・ロンダリング関数。*1まとめ: オブジェクト生存期間(lifetime)に基づいた最適化の抑止をコンパイラに伝える関数。プログラマ視点では “何もしない関数” にみえる。*2…