C與C++ 無參函數(shù)的區(qū)別解析
更新時間:2013年07月20日 16:33:48 作者:
在《C++ 編程思想》:“關(guān)于無參函數(shù)聲明,C與C++有很大的差別。在C語言中,聲明int fun1(),意味著一個可以有任意數(shù)目和類型的函數(shù);而在C++中,指的卻是一個沒有參數(shù)的函數(shù)”
下面是一個C語言的函數(shù)和C++的函數(shù)驗證了這段話
復(fù)制代碼 代碼如下:
# include<stdio.h>
int fun1();
int main()
{
int a = fun1(3, 4);
printf("%d\n", a);
return 0;
}
int fun1(int a, int b)
{
return a + b;
}
結(jié)果沒有任何問題,輸出結(jié)果為7,也即fun()可以聲明fun(int, int)
復(fù)制代碼 代碼如下:
# include<iostream>
using namespace std;
int fun1();
int main()
{
int a = fun1(3, 4);
cout << a << endl;
return 0;
}
int fun1(int a, int b)
{
return a + b;
}
編譯出錯,“fun1”: 函數(shù)不接受 2 個參數(shù)。說明在C++中fun()不可以聲明fun(int, int)
您可能感興趣的文章:
- VC中SDK與MFC的區(qū)別淺析
- c++中虛函數(shù)和純虛函數(shù)的作用與區(qū)別
- 虛函數(shù)與純虛函數(shù)(C++與Java虛函數(shù)的區(qū)別)的深入分析
- c++ 虛函數(shù)與純虛函數(shù)的區(qū)別(深入分析)
- c++函數(shù)中的指針參數(shù)與地址參數(shù)區(qū)別介紹
- C++中memcpy和memmove的區(qū)別總結(jié)
- 深入分析C++中聲明與定義的區(qū)別
- C++中指針和引用的區(qū)別分析
- C與C++中結(jié)構(gòu)體的區(qū)別
- C字符串與C++中string的區(qū)別詳解
- C/C++動態(tài)分配與釋放內(nèi)存的區(qū)別詳細(xì)解析
- C++中繼承與組合的區(qū)別詳細(xì)解析
- VC中SendMessage和PostMessage的區(qū)別