c++内置函数---7


 原创博客:转载请标明出处:http://www.cnblogs.com/zxouxuewei/

 

内置函数

调用函数时需要一定的时间和空间的开销。一般,函数调用包括5部分:

1、程序先执行函 数调用之前的语句;

2、流程的控制转移到被调用函数的入口处,同时进行参数传递;

3、执行被调用函数中函数体的语句;

4、流程返回调用函数的下一条指令 处,将函数返回值带回;

5、接着执行主调函数中未执行的语句。这就要求在转到被调用函数之前,要记下当时执行的指令地址,还要保护“现场”,以便在函数调 用之后继续执行。在函数调用之后继续执行。在函数调用之后,流程继续返回到先前记下的地址处,并且根据记下的信息“回复现场”,然后继续执行。这些都需要 话费一定的时间,如果有的函数需要频繁使用,则所用时间会很长,从而降低了程序执行的效率。

C++中提供了一种高效率的方法,即在编译时将所调用函数的代 码嵌入到主调函数中,而不是将流程流转出去。这种函数成为内置函数,又称内联函数。指定内敛函,只需要在函数的首行左部添加一个关键字inline即可。

 

#include <iostream>
using namespace std; inline int max(int,int, int); //声明函数,注意左端有 inline int main() { int i=10,j=20,k=30,m; m=max(i,j,k); cout<<″max=″<<m<<endl; return 0; }
inline
int max(int a,int b,int c) //定义max 为内置函数 { if(b>a) a=b;//求 a,b,c中的最大者 if(c>a) a=c; return a; }

使用内敛函数可以节省运行时间,但是却增加了目标程序的长度。因此一般只将规模很小(一般为5个语句以下)而是用频繁的函数声明为内联函数。内联函数中不能包括复杂的控制语句,如循环语句和switch语句。

 

    class Student
    {
    public :
    void display( )
    {
        cout<<″num:″<<num<<endl;cout<<″name:″
        <<name<<endl;cout<<″sex:″<<sex<<endl;}
    private :
        int num;
        string name;
        char sex;
    };

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM