函数调用的方法有很多,再次介绍两种方法,一种是通过文件共享,另一种方法是通过头文件来定义函数

       函数调用从本质上采用的是栈的数据结构来实现的,而函数调用的方法也有很多,一般我们都会将要调用的函数和主函数都写在一个文件中,这样特别不利于函数的封装以及对于别人对于函数的调用,因而采用将函数和主函数分离的方法显得特别重要。下面介绍两种不同的分离方法。

    (1)类似于文件共享的方式(不知道这样描述是否真确)

      在主函数中进行调用函数的申明。例如:

    /*------------------main.cpp-------------------*/

 

#include <iostream>

using namespace std;

 

int acompare(int,int);

int abs1(int);

int main()

{

 cout<<abs1(-4)<<endl;

 cout<<acompare(3,-4)<<endl;

 

 return 0;

}

 

 

 

  /*------------------abs1.cpp-------------------*/

 int abs1(int a)

{

return (a>=0)? a:-a;

}

 

 

  /*------------------acompare.cpp-------------------*/

 

int abs1(int);    //注意要对abs1进行申明,因为后面会调用到这个函数

 

int acompare(int a,int b)

{

return abs1(a)-abs1(b);

}

 

 

 

 

(2)采用头文件的方法,在头文件中对函数进行申明。例如:

    /*------------------main.cpp-------------------*/

 

#include "func1.h"

#include "func2.h"

#include <iostream>

using namespace  std;

 

int main()

{

cout<<abs1(-4)<<endl;

cout<<acompare(3,-4)<<endl;

}

 

 

    /*------------------func1.cpp-------------------*/

    #include "func1.h"

 

int abs1(int a)

{

return (a>=0)? a:-a;

}

    /*------------------func2.cpp-------------------*/

 

#include "func2.h"

 

int acompare(int a,int b)

{

return abs1(a)-abs1(b);

}

 

    /*------------------func1.h-------------------*/

 

#ifndef _FUNC1_

#define _FUNC1_

int abs1(int);

#endif

 

 

   /*------------------func1.h-------------------*/

 

#ifndef _FUNC2_

#define _FUNC2_

#include "func1.h"//注意要添加上func1的头文件

int acompare(int ,int);

#endif

 

 

以上只是本人在学习c++中的一些体会,大家可以借鉴一下,对于更好的了解函数调用,头文件的知识有进一步的了解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值