クラス は、ユーザー定義のデータ型を作成するためのメカニズムの 1 つです。
これは、C 言語の構造体のデータ型と似ています。
C では、構造体は、データ・メンバーのセットで構成されます。
C++ では、クラスの型は C 構造体と似ていますが、クラスは、
データ・メンバーのセット、およびそのクラスで実行できるオペレーションのセットで構成される点が異なります。
C++ において、クラスの型は union、struct、 または class というキーワードを用いて宣言することができます。 共用体オブジェクトは、名前付きメンバーのセットの 1 つを保持できます。 構造体およびクラス・オブジェクトは、全メンバーのセットを保持します。 各クラス型はそれぞれ、データ・メンバー、メンバー関数、および他の型名を含む、 クラス・メンバーの固有のセットを表します。 メンバーに対するデフォルトのアクセスは、クラス・キーによって決まります。
クラス型を作成すると、1 つまたは複数のそのクラス型のオブジェクトを 宣言することができます。次に例を示します。
class X { /* define class members here */ }; int main() { X xobject1; // create an object of class type X X xobject2; // create another object of class type X }
C++ では、ポリモアフィック・クラスを持つことができます。ポリモアフィズムにより、コンパイル時において関数が所属するクラスを正確に把握しなくても、 別々のクラス (継承に関連した) に現れる関数名を使用することができます。
C++ では、多重定義の概念から、標準の演算子および関数を再定義することができます。 演算子の多重定義により、組み込み (標準装備の) 型と同じように簡単にクラスを使用できるので、 データ抽出が容易になります。
関連参照