C++函数的一些特性-创新互联
一、内联函数
在雨城等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站制作 网站设计制作按需网站开发,公司网站建设,企业网站建设,成都品牌网站建设,成都全网营销,成都外贸网站建设公司,雨城网站建设费用合理。调用函数时需要一定的时间和空间的开销。函数调用过程:
C++提供一种提高效率的方法,即在编译时将所调用函数的代码直接嵌入到主调函数中 ,而不是将流程转出去。这种嵌入到主调中的函数称为内联函数。
#include
using namespace std;
inline int sum(int a,int b);
int main()
{
int a=100;
int b=200;
cout<
在调用sum(a,b)时,就用sum函数体的代码代替sum(a,b)
注意可以在声明函数和定义函数时同时写inline,也可以在其中一处声明inline,效果一样。
适用于:规模较小而又被频繁调用的简单函数。
二、函数的重载
在编程时,有时我们要实现的是同一类的功能,只是有些细节不同。比如sum()函数:
int sum1(int a,int b);
int sum2(int a,int b,int c);
double sum3(double a,double b);
float sum4(float a,float b);
C++允许用同一函数名定义多个函数,这些函数的参数类型和参数个数可以不同。
int sum(int a,int b);
int sum(int a,int b,int c);
double sum(double a,double b);
float sum(float a,float b);
三、函数模板
所谓的函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代替。凡是函数体相同的函数都可以用这个模板来代替,不必定义多个函数,只需在模板中定义一次即可。在调用函数时系统会根据实参的类型来取代模板中的虚拟类型。
template
T sum(T a,T b,T c)
{
return a+b+c;
}
定义函数模板的一般形式:
template
类型参数可以不止一个:
template
四、有默认参数的函数
一般情况下,在函数调用时形参从实参那里取得值。有时多次调用同一函数时用同样的实参,C++提供简单的处理办法,给形参一个默认值,这样形参就不必一定要从实参取值了。
flaot area(float r=6.5);
area(); //相当于area(6.5);
五、函数的嵌套调用
C++不允许对函数进行嵌套定义,即一个函数中不能完整地包含另一个函数。在一个程序中每一个函数的定义都是互相平行和独立的。虽然C++不能嵌套定义函数,但是可以嵌套调用函数。
六、函数的递归调用
在调用一个函数的过程中又出现间接或直接地调用该函数本身,称为函数的递归调用。
七、内部函数和外部函数
内部函数:只能被本文件其他函数调用
外部函数:缺省默认为外部函数,可供其他文件调用
static int fun(int a,int b);
extern int fun(int a,int b);
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享标题:C++函数的一些特性-创新互联
标题链接:http://scyanting.com/article/dhoshh.html