記住:通常靜態數據成員在類聲明中聲明,在包含類方法的文件中初始化.初始化時使用作用域操作符來指出靜態成員所屬的類.但如果靜態成員是整型或是枚舉型const,則可以在類聲明中初始化!!!
private:
static const string name;
};
const string Account::name("Savings Account");
const char Account::name[nameSize]="Savings Account";
nameSize 沒有被類名Account 限定修飾. 盡管nameSize是私有成員, 但是name的定義仍沒有錯, 怎么會這樣? 如同類成員函數的定義可以引用類的私有成員一樣靜態數據成員的定義也可以引用靜態數據成員, name 的定義是在它的類的域內當限定修飾名Account::name被看到之后它就可以引用Account 的私有數據成員。
新聞熱點
疑難解答
圖片精選