我想問下類名成員函式是什麼意思,我想問下類名成員函式是什麼意思

2021-03-03 20:44:21 字數 5073 閱讀 6883

1樓:匿名使用者

這個是要一步一步看的

如你所說 find(t x) 這是一個成員函式那前面的就是返回版

值咯只不過這個返回值有些複雜

slistnode 是一個權模板

slistnode這個就是模板的一個具體實現加上型號 就意味著返回值是這個型別的指標形式。

2樓:生根紋濁

春滿人間諾該豪華苯壕

c++類名+&+函式名是什麼意思?

3樓:匿名使用者

過載運算子時用不用"&"都無

所謂,可以試試下面這個程式

#include

using namespace std;

class clock

; clock::clock(int newh,int newm,int news)

else

cout<<"time error!"<載定義 }return *this;

} clock clock::operator ++(int)//後置過載定義

int main()

看一看過載++ 的部分!希望對你有幫助~!天天開心

4樓:匿名使用者

在類外對這個函式進行例項化

也就是在類外把這個函式的內容寫出來

幾個(類名+&)才知道這個函式是屬於這個類的

new +類名什麼意思 c++

5樓:淚之夢幻

新建一個這個類名下的物件。

當使用關鍵字new在堆上動態建立一個物件時,它實際上做了三件事:獲得一塊記憶體空間、呼叫建構函式、返回正確的指標。當然,如果建立的是簡單型別的變數,那麼第二步會被省略。

new int;//開闢一個存放整數的儲存空間,返回一個指向該儲存空間的地址(即指標)

new int(100);//開闢一個存放整數的空間,並指定該整數的初值為100,返回一個指向該儲存空間的地址

new char[10];//開闢一個存放字元陣列(包括10個元素)的空間,返回首元素的地址

new int[5][4];//開闢一個存放二維整型陣列(大小為5*4)的空間,返回首元素的地址

float *p=new float (3.14159);//開闢一個存放單精度數的空間,並指定該實數的初值為//3.14159,將返回的該空間的地址賦給指標變數p

new運算子使用的一般格式為 new 型別 [初值] 用new分配陣列空間時不能指定初值。如果由於記憶體不足等原因而無法正常分配空間,則new會返回一個空指標null,使用者可以根據該指標的值判斷分配空間是否成功。

6樓:匿名使用者

new是一個函式(只不過比較特殊),他為某一型別資料分配記憶體 返回這個記憶體區的指標,c++中的new和c中的malloc不同,new後面加的是 一個型別,類就是一個型別,int,flaot等也是

new gdisplayconfig這句就代表你分配了sizeof( gdisplayconfig)的大小的記憶體區,返回gdisplayconfig型別的指標以作為函式m_spdisplayconfig.reset的實參。

7樓:匿名使用者

new是一個運算子,在堆裡面建立一個新的物件:

例如:它有三種建立方式

new 類名(實參表);

new 類名();

new 類名;

8樓:

reset 的引數是一個 cgisplayconfig物件的地址 通過new來產生這個空間

c++中成員函式過載是什麼意思?

9樓:du瓶邪

過載函式

過載,英文為overloading,大概就是很多個的意思。

舉個例子,比如,我需要個函式。

取2個int的最大值。很容易,函式介面應該是(1) int max(int a, int b);

那更進一步,我取3個 int 的最大值呢,介面可以定義為(2) int max(int a, int b, int c);

對比 函式(1), (2), 的名字,是一樣的,都叫 max,就只有引數的個數不同。這是函式過載。

那現在,我需要取兩個float的最大值呢,介面也可以定義為(3) float max(float a, float b);

對比 函式(1),(3), 名字也是一樣的,叫max。引數個數也是一樣的。不過引數的型別不同。這也是函式過載。

10樓:

函式的過載,主要是說,當你傳進對應的引數的時候,呼叫的對應的函式。也就是樓上所說的多型。比如一個籃子可以裝蘋果8個或者裝梨子4個。

當你告訴籃子說我要裝蘋果,它就給你返回一個說我能裝8個。你又告訴籃子說我要裝梨子,它就給你返回一個4個。就是這個意思。

11樓:歪歪

函式過載是指在同一作用域內,可以有一組具有相同函式名,不同引數列表的函式,這組函式被稱為過載函式。過載函式通常用來命名一組功能相似的函式,這樣做減少了函式名的數量,避免了名字空間的汙染,對於程式的可讀性有很大的好處。

1.2、為什麼需要函式過載(why)?試想如果沒有函式過載機制,如在c中,你必須要這樣去做:

為這個print函式取不同的名字,如print_int、print_string。這裡還只是兩個的情況,如果是很多個的話,就需要為實現同一個功能的函式取很多個名字,如加入列印long型、char*、各種型別的陣列等等。這樣做很不友好!

類的建構函式跟類名相同,也就是說:建構函式都同名。如果沒有函式過載機制,要想例項化不同的物件,那是相當的麻煩!

操作符過載,本質上就是函式過載,它大大豐富了已有操作符的含義,方便使用,如+可用於連線字串等!

我們在開瓶瓶罐罐的時候,經常會遭遇因各種瓶口規格不同而找不到合適的工具的尷尬。所以有時候就為了開個瓶,家裡要備多種規格的開瓶器。同樣是開個瓶子嘛,何必這麼麻煩?

於是有人發明了多功能開瓶器,不管啤酒瓶汽水瓶還是軟木塞的紅酒瓶都能輕鬆開啟。

然而開瓶器的問題也會發生到程式設計中。比如我們要編寫一個函式來求一個數的絕對值,然而整數、浮點型數、雙精度型數都有絕對值,但為它們編寫的函式返回值型別卻是各不相同的。比如:

int iabs(int a);

float fabs(float a);

double dabs(double a);

這樣是不是有點備了多種開瓶器的感覺?我們能不能在程式設計中也做一個多功能的開瓶器,把所有資料型別的求絕對值都交給abs這一個函式呢?

在c++中,我們也能夠把具有相同功能的函式整合到一個函式上,而不必去寫好多個函式名不同的函式,這叫做函式的重(音chóng)載(overload)。過載的本質是多個函式共用同一個函式名。

我們先來看一個函式過載的例項:(程式6.3)

#include "iostream.h"

int abs(int a);//當引數為整型資料時的函式原型

float abs(float a);//當引數為浮點型資料時的函式原型

double abs(double a);//當引數為雙精度型資料時的函式原型

int main()

int abs(int a)//函式定義

float abs(float a)

double abs(double a)

執行結果:

int abs

int abs

a=5b=3

float abs

float abs

c=2.4

d=8.4

double abs

double abs

e=3e-009

f=3e+006

執行結果表明,abs函式果然能夠處理三種不同資料型別的資料了。那麼我們怎樣才能自己造一個「多功能工具」呢?

其實要編寫一個過載函式並不是很麻煩。首先,我們要告訴電腦,同一個函式名存在了多種定義,所以,我們要給同一個函式名寫上多種函式原型(如程式6.3的第二到第四行);其次,我們要對應這些函式原型,分別寫上這些函式的定義(如程式6.

3的主函式體之後,對三個abs函式的定義)。

然而電腦又是如何來識別這些使用在不同環境下的「工具」的呢?

在日常生活中使用到多功能工具,如果我們不知道具體應該使用哪個工具,我們會把每個工具放上去試一試,如果只有唯一一個工具適合,那麼我們就毫無疑問地能夠確定就是使用它了。但是如果出現了兩個或者兩個以上工具都能適合,我們就分不清到底應該使用哪個是正確的了。

電腦的做法和我們是類似的。電腦是依靠函式宣告時參數列中引數個數、各引數的資料型別和順序來判斷到底要執行哪個函式的。因此,當過載函式參數列完全相同的時候,電腦便無法判斷應該執行哪個函式,於是程式就出錯了。

我們瞭解了電腦是如何識別過載函式以後,發現要編寫一個過載函式還是需要注意一些地方的,那就是:在過載函式中,任意兩個函式的參數列中的引數個數、各引數的資料型別和順序不能完全一樣。例如int func(int a,char b)和float func(int c,char d)就不能過載,因為它們的引數個數、各引數的型別和順序完全一樣,即使形參名不同、返回值型別不同也是無濟於事的。

在呼叫一個過載函式時,可能會發生找不到一個完全合適的函式。這時候,就需要進行資料型別的轉換。由於這種方法可能導致資料丟失或資料型別不嚴格符合,且在充分考慮問題後,這種情況是可以儘量避免的,所以這裡不再就這個問題論述。

有興趣的讀者可以查閱其他c++的參考資料。

從某種意義上說,過載函式是方便了函式的使用者。在前一節我們知道,如果完成了所有函式的編寫,那麼完成一個程式就像搭積木一樣簡單了。然而如果功能相似名字卻不同的函式太多,那麼多「積木」搭起來也未必簡單。

當函式的編寫者充分考慮了不同情況下應該執行稍有不同的函式,函式的使用者就不必為這些小細節而煩惱了。不過過載函式的函式名還是應該符合其功能,如果把功能完全不同的函式過載,那麼就大大影響了程式的可讀性。

12樓:匿名使用者

這是函式的過載,能夠實現多型。根據引數的型別分別呼叫不同的函式

13樓:朱同路口

函式的過載,函式名字雖相同,但是功能缺失不同。可以根據需要傳進去的引數做到函式功能不同。

14樓:匿名使用者

應該一個是建構函式,一個是成員函式

惠安有翡翠加工嗎,我想問下這個翡翠加工成珠子,加工費多少錢?

因此,其加工工藝 加工材料 加工工具和加工裝置都不同於其他玉石。本文介紹了翡翠的生產工藝流程如下 1。材料選擇 這是一個重要的開端,翡翠的材料通常是帶皮殼的,皮殼是世界上唯一帶皮殼的玉石,因此也被稱為 賭石 這在其他玉石中是找不到的。圖2。切割 通常的方法是先 揉皮 觀察玉石的表面特徵,如玉石顏色的...

我想問下這種屬於哪一類人,我有個同事是個47歲的老阿姨,我把她當作可以聊天傾訴的物件,她卻是個包打

看了你的敘述,深有同感,社會之大,類似的人也不少,到處都有。你有說話聊天的權利,但是,你沒有限制別人說話的權利,所以啊,在以後的工作中,時間長了,你的經驗也會逐漸的增長,不能做一個沒心少肺的人,和這種女同事相處,多長個心眼,掌握好分寸,注意哪個該說,哪個不該說。為人熱情是對的,只要不是非常的閨蜜,不...

急急急,我想問下知道的人,我是一名高一學生,準備高二了,我由於種種原因可能不能到校上課了,我想放

可以,一般有幾種方式 請假,請一年的假期,開學交學費,在學校最後有個靠譜的同學,高考報名體檢了什麼的提醒你。第二是休學,不過休學好像是算作停止學習,學籍自動延後,相當於留級。第三,有學校會有一種懲罰叫 勸退 是保留學籍,不讓在學校學習,可以來參加考試。如果真的有特殊情況的話,跟老師說清楚,學校一般會...