1. 程式人生 > >c++物件陣列和this指標

c++物件陣列和this指標

當程式需要建立同一個類的多個物件時,可以建立物件陣列,宣告物件陣列的方法和宣告標準型別陣列相同,且陣列用法也相同。

宣告:Stock mystuff[4];

初試化:Stock stocks[4]=

{

Stock("WANG",1,2),

Stock("zhang",2,3),

Stock();

};

其中,第三個使用的是預設的建構函式,1和2使用的是已定義的建構函式,由於只宣告的前三個,所以第四個也是預設的建構函式。
在類中定義的名稱(如類成員函式名和類成員名)的作用域都為整個類,作用域為整個類的名稱只是在該類中是已知的,在類外是不可知的。因此,可以在不同的類中使用相同的類成員名而不會引起衝突。類的作用域特性導致不能從外部直接訪問類的成員,共有成員函式也是如此。要呼叫公有成員函式,必須通過物件,使用作用域解析運算子:

::  .  和->三種。

2:可以建立一個作用域為類的符號常量,這樣可以供物件陣列使用,有兩種方法:

class Bakery

{

private:

enum{Months=12};

//static const int months=12;

double costs[Months];

}

這兩種方法都行,但是以前常用的方法const int Months =12;是不行的,因為宣告只是描述了物件的形式,並沒有建立物件,因此,在建立物件前,並沒有用於儲存值的空間。