1樓:匿名使用者
此為類别範本,該建構函式使用了初始化列表,等價於
seqlist(int sz=defaultsize)
}對於const、引用型別成員在建構函式內對其初始化是不起作用的,必須在初始化列表中初始化。
2樓:篤俠
簡單地講,類别範本是以型別作為形式引數的類。用類别範本例項化一個物件時,首先用實參型別替代類别範本定義中的型別形參而形成一個具體的類(模板類),然後用這個具體的類建立物件。
比如這個程式:
seqlist是類别範本(type為型別形參名),其功能是實現元素型別為type的順序表。
當用seqlist例項化一個物件(比如 seqlisttest(15); )時,首先用實參型別(int)替代類别範本(seqlist)定義中的型別形參(type)而形成一個具體的類(模板類seqlist),這個類的建構函式可以看成:
seqlist(int sz=defaultsize):m_nmaxsize(sz),m_ncurrentsize(-1)
}所以,執行 seqlisttest(15); 建立test物件時,test物件的資料成員m_nmaxsize的值為15,m_ncurrentsize的值為-1,m_elements的值為新分配的能夠存放15個int型資料的記憶體塊的首位元組地址。
3樓:匿名使用者
大哥我菜鳥。。一點也不懂。。
在c++中物件成員必須在含有引數的建構函式中初始化,並且在初始化成員列表中?這句話有問題吧?
4樓:周生
看你的成員變數型別和繼承方式了,公有成員變數和公有繼承,直接賦值就行了。私有成員變數,繼承之後要在初始化列表中初始化
初始化表的必要性
1) 類中包含常量和引用型的成員變數。必須通過建構函式和初始化表顯式地對其進行初始化。
2) 在子類中顯式地構造其基類部分。
class a
a (int n) : m_n (n) {}private:
int m_n;
};class b
b (int n) : m_a (n) {}private:
a m_a;};
5樓:
不一定在有引數建構函式初始化,不一定要在列表中初始化。
希望能幫到你,**不清楚再問。
例如:#include
using namespace std;
class a
};int main()
6樓:楊星光
1建構函式可以沒有引數
2如果沒有引數,那麼在建構函式中如資料成員直接賦值
如:class student;}
7樓:匿名使用者
可以無參建構函式初始化,不一定要在成員列表中,這只是其中的一種方式
構造柱施工順序為什麼構造柱的施工順序裡先砌牆後澆柱
砌築牆體。圈樑 牆體施工到圈樑位置,施工圈樑再砌築牆體 構造柱 砌築牆體,留好馬牙槎。等牆體施工完成後,澆築構造柱 因為構造柱的工藝是 先退後進 先砌牆可以將構造柱的馬牙槎留出來,這樣在構造柱澆築後,才能和牆體合為一體。在砌體房屋牆體的規定部位,按構造配筋,並按先砌牆後澆灌混凝土柱的施工順序製成的混...
建構函式是用來初始化所定義的物件,如果類中沒有定義任何建構函式,則該類的對
不對,c 裡不寫類的建構函式時,編譯器會為類建立一個預設的建構函式,雖然這個函式什麼都不做,但是類的物件還是會在此時初始化,不過,物件成員的值是隨機的,比如,指標型成員變數可能為null,也有可能不為null。 no如果使用者不提供建構函式,那麼編譯器就會自動合成一個預設建構函式 除非自定義一個私有...
下面是魯迅小說《祝福》中的一段環境描寫。請從表達效果的角度予以點評。要求 語言表達準確 簡明 連貫
環境描寫渲染了一種陰冷沉悶的氛圍,暗示了祥林嫂的悲劇命運。意思對即可 下面是魯迅 藥 中開頭的一段環境描寫。請結合課文從描寫的角度予以點評。要求 語言表達準確 簡明 這段景物描寫烘bai託了氣氛,勾勒出黎 du明前最zhi黑暗時刻的突出特dao徵 陰暗 清涼 恐怖,同回時也渲染答了夏瑜就義時沉寂 肅...