共用方式為


類別型別物件

物件是儲存在執行環境 ; 具型別的區域 除了保留狀態資訊,它也會定義行為。 類別型別物件使用定義的類別名稱。 請考慮下列程式碼片段:

// 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++ 所定義下列作業:

  • 工作分派。 一個物件可以被指派到另一個。 這項作業的預設行為是成員的複本。 這種行為可以藉由提供使用者定義的工作分派運算子來修改。

  • 使用複製建構函式初始設定。

使用使用者定義的複製建構函式初始設定的範例如下:

  • 物件的外顯初始化。 例如:

    Point myPoint = thatPoint;
    

    宣告myPoint為型別的物件Point ,並初始化它的值, thatPoint。

  • 藉由傳遞做為引數所造成的初始化。 傳值方式或傳址時,物件可以被傳遞至函式。 如果將它們傳值方式傳遞,每個物件的複本會傳遞至函式。 建立複本的預設方法是對的複本。 這可以修改提供的使用者定義的複製建構函式 (使用建構函式型別的單一引數"類別參考")。

  • 因從函式的傳回值的初始設定的初始設定。 傳值方式或傳址時,物件可能會傳回從函式。 傳回值的物件的預設方法就是對的複本。 這可以藉由提供使用者定義的複製建構函式來修改。 傳回參考 (使用指標或參考型別) 的物件不應該自動與呼叫的函式的本機。 如果是的話,傳回的值所參考的物件將已經超出範圍才可以使用。

多載運算子解釋如何重新定義類別的類別為基礎的其他運算子。

請參閱

參考

類別概觀