c 類中成員函式的問題

時間 2021-08-30 09:08:32

1樓:

1.你這基礎實在薄弱,基本概念都還沒懂

2.下面的void m::f1(m m) 是對類裡面 static void f1(m m); 函式的實現。

m m 的意思定義一個m的物件m.也就是這個函式的引數必須是一個m的物件。

3.m p(5),q(10) ,這裡的定義兩個m物件 括號裡的值是傳遞給建構函式的,

即呼叫此處:

m(int a)

(至於為什麼,不做解釋)

4.上面已經說了,m中的靜態函式 void f1(m m); 宣告瞭引數必須為m物件。

函式引數為什麼不能是物件呢,一切都是物件。int是物件 string也是物件 m同樣是物件 int ,string可以是引數為當然m也就是可以的了

勸君多學學看看概念

2樓:匿名使用者

型別定義:( 型別 變數名1(參數列),變數名2(參數列),....)

這就是m m的中間有空格意思

以上定義方式理解了就會了,接著是 類m 的構造 m(int a) 。

所以 m p(5) 要加個引數。

3樓:匿名使用者

**void m::f1(m m)中括號內m m什麼意思?為什麼要用空格隔開?

m是類,m是m類的物件,f1就是以m類的物件作為引數的函式m p(5),q(10)這樣的定義括號內的值有什麼用?

這樣是宣告m類的物件,會自動呼叫m的建構函式m(int a),初始化a和b

還有它下面兩句物件能作為函式的引數??

f1的引數就是m類的物件

4樓:匿名使用者

void m::f1(m m)中括號內m m什麼意思?

定義了一個類為m的函式形參變數m

m p(5),q(10);定義變數並初始化他的成員變數am::f1(p);

m::f1(q);

//主要是f1 函式是情態函式,用static 宣告,例項物件不能呼叫,只能是類呼叫

5樓:忍深林

void m::f1(m m)這個一個語句中m是資料型別,m是類的名字類似於以下定義“int x;” m的作用和int一樣,m的作用和x一樣,m p(5),q(10)括號裡的值是用來初始化物件的,注意到m這個物件的建構函式有一個輸入引數a,括號裡的兩個字就是建構函式的輸入值;可以呀,因為前面這個函式的輸入引數是m m所以輸入引數是物件

6樓:周生

m是類名,m是引數名,型別是m

後邊的是對類物件初始化

哪個坑爹的老師教你寫這種**啊?

1 變數名要用小寫字母開始

2 不要用無意義的詞或者一個字母的名字,儘量用有意義的單詞或者縮寫3 儘量少用全域性變數

7樓:匿名使用者

這裡有個學c++的妹子啊!!!

兄弟們速度來教啊!!!

這個機會就讓給單身的兄弟們了! 看我多高尚 。

c成員函式的實現部分 寫在類外 ,究竟屬於類的內部還是外部

不管是類外實現還是類內實現,都是在類的作用域內部,比如類外實現class a void a show 雖然是在類外實現但是必須要用作用域解析運算子,編譯器才知道這是a類的作用域的函式,否則就報錯 所以咯,不管是 實現都保證是在這個作用域內部,也就是說本來就是屬於類內部的 函式名和函式體是類作用域內。...

C 中的建構函式問題,c 建構函式的問題

建構函式一般用來對類中的資料成員進行初始化工作,但並不是要對全部資料初始化,你只需要選擇自己需要的資料進行賦值即可。其實這一點從預設的建構函式也能看出來 當你沒有顯示的寫乙個建構函式的時候,編譯器會為你提供乙個預設的建構函式,它沒有引數,只有乙個空語句,也就是說它沒有對任何資料成員進行初始化。由於構...

c 設計時鐘類,資料成員有時,分,秒,函式成員可實現修改時鐘時間,顯示時鐘時間

pragma once define win32 lean and mean 從 windows 頭中排除極少使用的資料 include include include include include include using namespace std enum int class date c...