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...