我们知道C++中自定义类占用的内存是数据成员,不包括函数成员。那自定义类占用的内存包不包括构造函数?
1 回答

onemoo
TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個(gè)贊
首先,你必須要知曉,C++ 標(biāo)準(zhǔn)并沒(méi)有規(guī)定類的具體實(shí)現(xiàn)方式和內(nèi)存布局,所以這個(gè)問(wèn)題沒(méi)有標(biāo)準(zhǔn)答案。絕對(duì)正確的回答只有一個(gè),那就是“不知道/有可能”
既然你這樣問(wèn)了,那你肯定看到某些教程或聽到某些人提到這個(gè)。確實(shí),目前在絕大多數(shù) C++ 實(shí)現(xiàn)里,類實(shí)例中不包括成員函數(shù)。 構(gòu)造函數(shù)也是成員函數(shù),所以在這樣的實(shí)現(xiàn)中,構(gòu)造函數(shù)也不會(huì)包含在類實(shí)例中。
其實(shí)從學(xué)習(xí)和使用 C++ 的角度來(lái)說(shuō),你完全可以不管這些。
能夠確定的是:對(duì)象占用的內(nèi)存就是 sizeof(其類型) 這么大。
- 1 回答
- 0 關(guān)注
- 1167 瀏覽
添加回答
舉報(bào)
0/150
提交
取消