最終更新:2026-10-12
C++ union 共用体¶
著者について:¶
個人公式アカウント(WeChat):

共用体(union)はメモリを節約する特別なクラスであり、1つの union は複数のデータメンバを持てますが、任意の時点で値を持てるデータメンバは1つだけです。あるメンバに値を代入すると、他のメンバは未定義の状態になります。共用体には次のような特徴があります:
- デフォルトのアクセス指定子は public である
- コンストラクタ、デストラクタを持つことができる
- 参照型のメンバを持つことができない
- 他のクラスを継承できず、基底クラスにもなれない
- 仮想関数を持つことができない
- 無名 union は、定義されたスコープ内で直接 union のメンバにアクセスできる
- 無名 union は protected メンバや private メンバを含むことができない
- グローバルな無名 union は静的(static)でなければならない
関連トピック¶
- C++ 純粋仮想関数と抽象クラス | C++那些事
- C++ assert アサーション | C++那些事
- C++ ビットフィールド | C++那些事
- C 言語による C++ 多態の実現 | C++那些事
- C++ const 定数と修飾 | C++那些事
- C++ const ファミリー | C++那些事
- C++ 間接参照演算子 * | C++那些事
- C++ 初期化と代入 | C++那些事
- C++ 複数戻り値の書き方 | C++那些事
- C++ mutable キーワード | C++那些事