最贊回答 / 慕雪908267
這里創建的*P是一個對象,所以銷毀的時候不用[];當創建的是一個對象數組的話就需要[];這個是內存管理的內容,即申請一個內存,銷毀的時候是delete p;申請的是內存塊的話就要delete []p
2019-01-14
已采納回答 / qq_慕圣7592846
p是指針,在執行完for的最后一次操作之后,p指向了申請的內存的之前一個位置,也就是p[-1],如果不p++,歸還的內存是從p[-1]開始的,是錯誤的
2018-11-23
已采納回答 / 寶慕林0048322
//確定方向 如果方向上有墻就逆時針轉一下 void turnBack(string map[X][Y], Human *man) { static int cache = 0; if (man->direction == N) { if (map[man->x - 1][man->y] == WALL) { man->direction = W; cache++; turnBack(map, man); } cache = 0; return...
2018-11-22
已采納回答 / 阿臣兒
這個Array是一個我們自定義的類,它和int其實差不多,只不過int是系統給我們定義好了的,我們直接去使用就好了,聲名一個函數的時候最前面的是返回的類型(無返回值用void),比如視頻中的int getlen(),返回的是一個int類型的值,而Array printInfo()返回的是一個Array類型的值(臨時對象),所以后面老師可以繼續使用 .(點)運算符訪問這個臨時對象的其他成員函數,不知道樓主能不能明白
2018-09-28
已采納回答 / 知否bot丶
常對象只能調用常成員函數。 m_coorA為常對象,而setA 為普通成員函數,m_coorA.setA(T* this,int x,int y)參數 T* this指的當前對象有可讀可寫權限,而m_coorA 只有可讀權限。肯定是不可以的。
2018-08-22
已采納回答 / 慕數據2169645
聲明數組初始化過程中,會調用形參類型相匹配的構造函數,如果沒有指定數組元素的初始值,就會調用默認構造函數。你在聲明的時候沒有指定初始值,所以需要調用默認構造函數。如果不調用默認構造函數的話,就需要設置初始值,就是我上一條回復你的那句。
2018-08-07