次の方法で共有


クラス型のオブジェクト

オブジェクトは実行時環境でメモリの指定された領域が ; 状態情報を保持するだけでなく動作を定義します。クラス型のオブジェクトは クラス名 を使用して定義されます。次のコードがあるとします。

// class_type_objects.cpp
class Account
{
public:
   Account()   // Default constructor
   {
   }
   Account( double );   // Construct from double.
   double& Deposit( double );
   double& Withdraw( double, int );
};

int main()
{
   Account CheckingAccount;   // Define object of class type.
}

このコードはクラス (新しい型) が呼び出された Account を宣言します。次にCheckingAccount と呼ばれるオブジェクトを定義するにはこの新しい型を使用します。

次の操作はクラス型のオブジェクトに対して C++ で定義されています :

  • 割り当て。1 個のオブジェクトを別のオブジェクトに代入できます。この操作の既定の動作ではメンバーごとのコピーです。この動作はユーザー定義の代入演算子を指定することによって変更できます。

  • コピー コンストラクターを使用して初期化されます。

次はユーザー定義のコピー コンストラクターを使用して初期化する例です :

  • オブジェクトを明示的に初期化します。次に例を示します。

    Point myPoint = thatPoint;
    

    myPointPoint のオブジェクトを型として宣言しthatPoint の値に初期化します。

  • 引数として渡すときに発生します。オブジェクトが値または参照を関数に渡すことができます。は値渡し各オブジェクトのコピーが関数に渡されます。コピーを作成する既定のメソッドはメンバーごとのコピーです。; これはユーザー定義のコピー コンストラクター (「クラス」への参照の引数を受け取るコンストラクターのできます。指定することで変更できます。

  • 関数の戻り値の初期化による初期化します。オブジェクトは値または参照によって関数を返すことができます。値でオブジェクトを返す既定のメソッドはメンバーごとのコピーです。; これはユーザー定義のコピー コンストラクターを指定することによって変更できます。参照によって返されるオブジェクト (ポインターまたは参照型を使用) 呼び出された関数に自動およびローカル必要があります。の場合は戻り値によって参照されるオブジェクトがスコープを使用する必要があります。これに含まれます。

オーバーロードされた演算子 はクラスに応じてクラスごとに他の演算子を再定義する方法について説明します。

参照

関連項目

クラスの概要