c 中,我把API函式簡化了一下,可以正常過載。但我把函式放入名稱空間之後,未過載原函式

2021-04-19 08:28:17 字數 2585 閱讀 2277

1樓:匿名使用者

兩個同名函式不在同一個名字空間內,所以就會出現你這種情況。呼叫其他名字空間的同名函式需要加上名字空間的名字,你的問題就是在createfilea前加上雙冒號。

在c++中,如果我命名了一個名稱空間a,讓後再空間中定義了一個類b,在類中有一個函式c,

2樓:匿名使用者

應該是可以的,我程式設計中經常使用std::string::npos(std名稱空間,string類,npos常量)

ps:你要是學習過string的話,應該就能接觸到

過載一個函式的條件是什麼?

3樓:椴

過載函式是函式的一種特殊情況,為方便使用,c++允許在同一範圍中宣告幾個功能類似的同名函式,但是這些同名函式的形式引數(指引數的個數、型別或者順序)必須不同,也就是說用同一個運算子完成不同的運算功能。這就是過載函式。過載函式常用來實現功能類似而所處理的資料型別不同的問題。

條件如下

兩個過載函式必須在下列一個或兩個方面有所區別:

1、函式有不同引數。

2、函式有不同引數型別,

c++的這種程式設計機制給程式設計者極大的方便,不需要為功能相似、引數不同的函式選用不同的函式名,也增強了程式的可讀性。

c++運算子過載的相關規定如下:

(1)不能改變運算子的優先順序;

(2)不能改變運算子的結合型;

(3)預設引數不能和過載的運算子一起使用;

(4)不能改變運算子的運算元的個數;

(5)不能建立新的運算子,只有已有運算子可以被過載;

(6)運算子作用於c++內部提供的資料型別時,原來含義保持不變。

希望可以幫到你,謝謝,望採納。

4樓:最涼不過人心

1在同一個類中;

2方法名相同;

3引數列表不同(包括引數的個數不同,引數的型別不同)。

注:返回值可以相同也可以不相同

5樓:匿名使用者

函式過載:是指允許存在多個同名函式,而這些函式的參數列不同(或許引數個數不同,或許引數型別不同,或者兩者都不相同),函式過載是發生在同一個類中。呼叫時,根據引數的不同進行呼叫。

同時編譯器在編譯期間就確定了要呼叫的函式,或者說這是一種早期繫結。同時,函式過載與多型無關。

我是從「上海全鼎軟體學院」畢業的————————

6樓:丿baby情義灬剛

引數的個數、引數型別或引數順序3者中至少有一種不同函式的返回值型別可以相同也可以不同。

7樓:匿名使用者

引數個數,型別,返回值不能和同名的完全一樣

c++中函式模板能夠過載嗎

8樓:匿名使用者

過載是完全可能復,只是在有的制時候會產生歧義,導致出錯.

錯誤例子

exp1:

template

t * fun(t *t)

template

t fun(t t)

int main()

這種就執行同不過

原因是模板函式是以實參推斷形參的型別,再來呼叫.

在上面主要錯的是fun(&a),我們既可以把形參型別推斷為int*那麼它可能去匹配t t,這裡的t解釋為int *也可以推斷為int型別 那麼它會去匹配t *t,這裡的t解釋為int所以2個方法都可能會呼叫,所以會產生歧義!

exp2

template

t * fun(t *t)

template

t fun(t t1,t t2)

int main()

這個就可以,雖然也會向上面的那樣推斷,但是由於引數個數的不同,還是可以把

他們區別開來的.

9樓:匿名使用者

在不產生歧義的情況是可以過載的吧 c++提供的模板特化應該就是一種過載

10樓:棋子

函式模板產生的相關函式都是同名的,編譯器用過載的解決方法呼叫相應的函式,

另外函式模板本身也可以用多種方法過載.我們剛學過....

編寫一個c++過載函式

11樓:匿名使用者

#include

using namespace std;

class fun_overload

12樓:匿名使用者

可以!使用巢狀呼叫!和專案可解決!

13樓:匿名使用者

#include"iostream"

using namespace std;

void display(int a)

void display(double a)void display(char a)

int main()

{int a=1;

float b=2.0;

double c=3.3;

char d='e';

short e=4;

display(c); //double

那位大俠能幫我簡化一下這條EXCEL函式,急越簡單越是好啊

product函式多餘 countif a2 e2,m 1 countif a2 e2,m 2 0 這應該是做為公式的一部分出現的 問題補充 是求這條函式的引數簡化寫出來達到上這條函式的要求你最好把公式全部都貼出來,你貼出來的公式,product函式完全多餘,而且不知道你要表達什麼?我的理解是在a2...

我在winpe下把C盤格式化了,我的C盤只有7 62G能裝什麼XP系統

官方原版的安裝完也就3g,找一個精簡版的ghost xp吧最好是刻盤,pe安裝不能重啟也是經常發生的事情,有的可以通過手動重啟解決 你可以在pe下分割槽的 直接拷貝別人系統時有的檔案不太好移動,不建議使用。實際上ghost就是拷貝的系統再安裝的過程 7g安裝xp足夠了,系統裝好後軟體一律裝在其他盤,...

一下關於C中的建構函式說法正確的是()

aa 在訪問一個類時,系統最先執行類中的建構函式來初始化類中的成員欄位,當類中沒有提供任何建構函式時,編譯器就會在後臺建立一個預設的建構函式。b 建構函式是沒有返回值 c 一般情況下,建構函式總是public型別的。d 建構函式是不可以被直接呼叫的,是需要建立物件才能呼叫的。貌似都不正確 a 訪問一...