c++ 類中const成員變量的賦值方法
更新時間:2016年12月30日 09:08:33 投稿:jingxian
下面小編就為大家?guī)硪黄猚++ 類中const成員變量的賦值方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
在頭文件的類的定義中定義了一個const成員變量c++ 規(guī)則:
1、類定義中不能進行初始化,因為頭文件中類的定義只是一個聲明,并沒有分配真正空間,因此變量是不存在的,因此是不能賦值的。
2、const 定義的變量是不能賦值
這可如何是好,聲明中不能賦值,聲明完還不能賦值。又不能不賦值。
解決方案:
1、在構(gòu)造函數(shù)后的參數(shù)初始化列表中初始化
2、將const變量同時聲明為 static 類型進行初始化。
Eg:
#include <iostream>
class CTestA
{
public:
CTestA():m_iSIZE(20) // method 1
{
}
~CTestA()
{
}
int GetSize()
{
return m_iSIZE;
}
private:
const int m_iSIZE;
};
class CTestB
{
public:
CTestB()
{
}
~CTestB()
{
}
int GetSize()
{
return m_iSIZE;
}
private:
static const int m_iSIZE;
};
const int CTestB::m_iSIZE = 3; // method 2
int main()
{
CTestA oTestA;
CTestB oTestB;
std::cout<<"oTestA:"<<oTestA.GetSize()<<std::endl<<"oTestB:"<<oTestB.GetSize()<<std::endl;
return 0;
}
以上這篇c++ 類中const成員變量的賦值方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C++實現(xiàn)LeetCode(26.有序數(shù)組中去除重復(fù)項)
這篇文章主要介紹了C++實現(xiàn)LeetCode(26.有序數(shù)組中去除重復(fù)項),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-07-07

