C關於成員函式建構函式的問題

時間 2022-08-20 10:07:45

1樓:豬頭或火寶寶

1.是的,對資料成員的初始化可以通過其函式成員,但系統在沒有建構函式的情況下就會自動呼叫預設的建構函式,建構函式是專門進行初始化的。別的函式有別的函式的用途。

2.類的資料成員在定義時是不允許初始化的,初始化是通過建構函式的 。

class date

};其初始化是通過建構函式的,當然可以啦!!!

3.以摟住給的題為例:

class date

};類date的建構函式是自己定義的,不是預設的建構函式要是樓主沒有定義的建構函式:比如;

class date

;其就沒有自己定義的建構函式,系統為為之生成乙個預設的建構函式,系統就會自動呼叫預設胡建構函式進行初始化,樓主問「它的引數列表或者為空,或者它的所有引數都具有預設值。這句話是什麼意思?」就是month day yesr 的值可能都是0或是其他的數。

不理解的話加我我們交流一下!!!530910067可以的啊!!!!

2樓:匿名使用者

1.對。成員函式都能給成員變數賦值。至於是不是初值看你理解了。

2.**有錯。

3.可以這麼理解。預設建構函式一般沒有引數,或引數有預設值其實成員初始化就是乙個賦值的過程

3樓:匿名使用者

樓主的理解沒有問題啊,其實程式設計重要的就是要多寫程式除錯,結果說明一切

關於c語言函式問題,關於C語言函式問題

一般判定都是為真執行,為假不執行 圖中的 p指的是 以p變數的內容為位址的變數 而你只要看看,它所指向的變數的值是不是0,如果不是0,那麼就會執行 這個地方其實不用換成for,該用什麼用什麼,如果是題目需要的話就只能這樣寫了 for p p 10 然後在裡面寫一堆語句.不過我是沒這樣寫過,不太清楚....

C結構體成員函式,c 結構體中的成員函式怎麼解決

foo b 語句3 去掉括號,foo b 這點與class有差別,沒有引數的時候,不需要括號。之所以 foo a 10 語句1 可以,而foo b 不可以 原因是 foo a 100 等價於 foo a foo 100 也就是int隱式轉化為foo,然後複製給a 雖然在本質上不能這麼理解 而你所期望...

c 繼承構造函式呼叫順序問題,高手求解

建立乙個派生類物件,首先呼叫其基類的建構函式,再呼叫自身的建構函式,建立乙個基類物件時,只會呼叫自身的建構函式而不會呼叫基派生類的建構函式。先呼叫基類的建構函式,再呼叫派生類的建構函式就像蓋樓的時候先從地基開始,然後第一層,第二層。如果是析構,那麼先呼叫派生類的析構函式,再呼叫基類的析構函式就像拆樓...

c建構函式的定義是什麼 在函式中有什麼作用

蝸牛優選推薦 建構函式是在建立給定型別的物件時執行的類方法。建構函式具有與類相同的名稱,它通常初始化新物件的資料成員。在下面的示例中,定義了乙個具有乙個簡單的建構函式,名為 taxi 的類。然後使用 new 運算子來例項化該類。在為新物件分配記憶體之後,new 運算子立即呼叫 taxi 建構函式。p...

c語言中的建構函式和析構函式的異同點

c語言不存在建構函式和析構函式。建構函式和類是c 的東西吧 c有建構函式和析構函式嗎?沒有吧。建構函式 析構函式有什麼相同點和不同點 建構函式是乙個特殊的成員函式,能夠自動初始化物件。析構函式是在乙個銷毀物件時自動呼叫的成員函式。通俗地講,建構函式就是在物件剛誕生時執行的函式,析構函式則是在物件將被...