エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
C++ の無名共用体の仕様に驚いた話
はじめに C++ には anonymous union という機能があります。 JIS 規格は参照していませんが、日本語では... はじめに C++ には anonymous union という機能があります。 JIS 規格は参照していませんが、日本語では「無名共用体[1]」と呼ぶのが一般的なようです。 本記事でもこの呼び方を採用します。 どうも C++98 から存在していた機能のようですが、私はこれの存在を知らなかったので実際に遭遇して驚きました。 なお、本記事における C++ は C++20 を想定しており、規格書は N4861 を参照しています。 遭遇したコード 思いっきり抜粋しましたが、次の Hoge クラスのプライベートメンバが無名共用体です。 class Hoge { public: class A { ... }; class B { ... }; private: // これが無名共用体 union { A a_; B b_; }; }; ご存知の方には何でもないコードでしょうが、私は理解できなくて (

