c中,在函式內是否可以再定義函式

2021-03-03 21:00:15 字數 3006 閱讀 5979

1樓:

函式內部肯定是不能定義函式的,只能使用,想想,在main函式裡能定義函式嗎,

2樓:

在函式內可以再呼叫另一個函式,但是定義要在這函式外面

3樓:志遠

不能直接定義,但可以通過函式物件實現,內

void fun()

}// 函式對容象

nesetfun fun;

fun(10);}

4樓:匿名使用者

不能。可在類定義巢狀類。

在函式內可以再定義一個函式嗎?

5樓:竟然沒名字用了

c++中結構

體可以定義一個函式。

1、c中的結構體和c++中結構體的不同之處:在c中的結構體只能自定義資料型別,結構體中不允許有函式,而c++中的結構體可以加入成員函式。

2、相同之處:結構體中可以包含函式;也可以定義public、private、protected資料成員;定義了結構體之後,可以用結構體名來建立物件。但c中的結構體不允許有函式;也就是說在c++當中,結構體中可以有成員變數,可以有成員函式,可以從別的類繼承,也可以被別的類繼承,可以有虛擬函式。

3、不同之處:結構體定義中預設情況下的成員是public,而類定義中的預設情況下的成員是private的。類中的非static成員函式有this指標,類的關鍵字class能作為template模板的關鍵字 即templateclass a{}; 而struct不可以。

4、c中的結構體只涉及到資料結構,而不涉及到演算法,也就是說在c中資料結構和演算法是分離的,而到c++中一類或者一個結構體可以包含函式(這個函式在c++我們通常中稱為成員函式),c++中的結構體和類體現了資料結構和演算法的結合。

為什麼c++語言不允許在一個函式的定義中再定義另一個函式? 舉個例子說明,謝謝

6樓:

//標頭檔案test.h

void f();

//原始檔test.cpp

#include"test.h"

void f()

提示找不到函式g().

一般函式的宣告與定義放

在不同檔案中,宣告的標頭檔案中只有巢狀定義的外層函式,巢狀在函式f中的函式是找不著的。。。

7樓:匿名使用者

c++中允許函式的巢狀呼叫,但不允許函式的巢狀定義,例如:

#include

int swpint(int *a,int *b)void main()

swpint(&e,&f);

cout<

}error c2601: 'swpint' : local function definitions are illegal

8樓:_白龍子

編語言的人就這麼設計啊,你如果會編的話自己設計一個語言就能作到在一個函式的定義中再定義另一個函式了

c/c++中函式允許在一個函式中又定義一個函式嗎?如果不能,那是為什麼呢?

9樓:彼岸草向陽

不能在一個函式中又定義一個函式(這個記到就可以了 ,) 只能在一個函式中呼叫另一個函式 這叫做巢狀呼叫

10樓:

簡單地說例如:

sum(int),你在下面又定義一個sum(int)那main()函式呼叫sum的時候就不知道該呼叫哪個了!這樣就會混亂!

如果第二個定義sum(double),這個是可以的!構成過載函式!

11樓:匿名使用者

一個函式裡你可以定義多個方法

在c++中,函式名可以隨便定義嗎????

12樓:go陌小潔

函式的命名規範:

函式的命名應該儘量用英文表達出函式完成的功能。遵循動賓結構的命名法則,函式名中動詞在前,並在命名前加入函式的字首,函式名的長度不得少於8個字母。 例如:

long cmgetdevicecount( );

1,要符合識別符號命名規範:以字母開頭,只包含字母,數字,下劃線。

2,不能與c++關鍵字衝突。

3,最好不要亂寫名字,基本要求是見名知意,且最好是動賓片語 eg:putback() find_first_of() push_back()。

13樓:匿名使用者

1,要符合識別符號命名規範:以字母開頭,只包含字母,數字,下劃線。

2,不能與c++關鍵字衝突。

3,最好不要亂寫名字,基本要求是見名知意,且最好是動賓片語 eg:putback() find_first_of() push_back()

14樓:春風化雨時

在c++中,函式名不可以隨便定義。

c++是在c語言的基礎上開發的一種通用程式語言,應用廣泛。c++支援多種程式設計正規化 --物件導向程式設計、泛型程式設計和過程化程式設計。最新正式標準c++14於2023年8月18日公佈。

其程式設計領域眾廣,常用於系統開發,引擎開發等應用領域,是至今為止最受廣大程式設計師受用的最強大程式語言之一,支援類:類、封裝、過載等特性!

15樓:匿名使用者

只要符合函式名的格式就可以隨便定義。

16樓:匿名使用者

不能,有些關鍵字不能用來命名函式名的!!

17樓:匿名使用者

函式名的定義有要求的 ,首先只能包含字母、數字、下劃線,數字不能做開頭,其次一些關鍵字不能用

18樓:壽菊月鄭贊

可以的但要有條件:要符合識別符號規則,也就是隻能以數字,字母,下劃線構成,開頭不能是數字。

還有,就是不能與關鍵字重合,比如:struct,include

這是關鍵字,不能與它們一樣,

還有,就是要做到見名知義,就是看見名字,要知道函式的功能大概是要做什麼的

C語言 可以在函式中定義另函式為什麼不對

c語言程式結構是 標頭檔案和巨集 全域性量宣告 主函式main 函式1函式2。函式nc語言程式,必須有一個主函式,可以有1個或多個其它函式,所有的函式塊是平行的,並列的。不允許 在一個函式中定義另一個函式。語法規則如此。這只是一種規定和約定。並不是說其它的計算機語言,或將來發明的計算機語言也必須如此...

c類成員函式可以定義變數嗎,C中定義的類,成員函式可以直接使用嗎

什麼叫 函式可以定義變數嗎 是在函式裡定義變數還是啥意思?沒有 函式可以定義變數 這種說法 c 中定義的類,成員函式可以直接使用嗎?沒有物件的時候要訪問類成員函式的話,只能訪問靜態成員函式。例如 class a 這樣可以在主函式裡直接用 a abc 這樣的語句進行呼叫。請教一下 c 類中privat...

c 中如果定義了帶引數的建構函式,那麼在定義物件時,必須初始化嗎

是這樣的。你定義了建構函式,系統就不會用預設的建構函式了。中你定義了自己的帶參建構函式,所以系統的預設建構函式就在編譯時,不會生成了。這個就需要自己定義了。否則的話,date a 這樣使用的時候就會報錯。定義物件的時候它會呼叫相應的建構函式初始化自己。如果沒有引數就呼叫不帶引數的建構函式。如果一個類...