最贊回答 / drivermonitor
因為A包含了對象B,也就是說要想“建造”A,必須先有B作為基礎(chǔ),所以,當(dāng)對象B是對象A的一個數(shù)據(jù)成員時,先構(gòu)造B,再構(gòu)造A??梢岳么a簡單跟蹤一下:<...code...>
2016-01-01
最新回答 / Nighthawk
p++時指針移到下一個位置了,此時的p[0]就是移動后的位置了,同理p[1]就是移動后的下一個位置,指針p這時還是在第一次移動后的位置,要想指到下一個位置,當(dāng)然要p++了,不知道解釋的清楚不。
2015-12-30
最贊回答 / 大只茹
int *p = new int[5];此時p不僅是一個指針,指向數(shù)組的第一個元素,而且還可以做數(shù)組名使用,因此p[0],p[1],p[2]..依次表示數(shù)組元素的內(nèi)容;而p,p+1..則存放的是數(shù)組各元素的地址;*p,*(p+1)..也表示數(shù)組元素的內(nèi)容。
2015-12-05
最新回答 / 慕工程3931867
函數(shù)里的內(nèi)容含有Coordinate的數(shù)據(jù)成員的代碼注釋掉,然后在類line的構(gòu)造函數(shù),用初始化列表初始化被const修飾的m_coorA。
2015-12-03
已采納回答 / DoDream
因為要調(diào)用父類的有兩個參數(shù)的那個構(gòu)造函數(shù),如果初始化放在子類的構(gòu)造函數(shù)中而不用初始化列表,很難調(diào)用父類的有兩個參數(shù)的那個構(gòu)造函數(shù),當(dāng)然你可以在子類的構(gòu)造函數(shù)中這樣寫:m_coorA.x = x1;m_coorA.y = y1;m_coorB.x = x1;m_coorB.y = y1;這樣寫可以達到初始化的目的,但寫的代碼就多了,直接調(diào)用父類的有兩個參數(shù)的那個構(gòu)造函數(shù)就簡單多了,所以選擇用初始化列表。
2015-11-26
最新回答 / 再吃一個蘋果_
# include <iostream>using namespace std;class Coordinate{public:? ? Coordinate(){cout << "Coordinate()" << endl;}? ? ~Coordinate(){cout << "~Coordinate()" << endl;}? ? int m_iX;? ? int m_iY;};int main(){Coordinate coor[3];coo...
2015-11-24
已采納回答 / Power12138
第一個問題:new指的是在堆中分配m_iCount個int內(nèi)存單元,這塊內(nèi)存單元的首地址賦給m_pArr指針變量,這樣子的會就可以通過m_pArr去訪問這塊內(nèi)存單元第二個問題,答案是一樣的,第二個更加細節(jié)的描述就是第一個那樣子去寫
2015-11-23
已采納回答 / onemoo
const對象是一旦被構(gòu)造出來,其值就不能被改變了。而構(gòu)造初始化列表就是用來構(gòu)造成員變量的,對const成員來說,初始化列表中提供的值就作為構(gòu)造它們的初值。所以這里并不是賦值操作。
2015-10-30