第一个问题,我不知道我有没有理解正确,你指的是,你每次在调用函数前都重新初始化这个变量,然后再调用函数
楼主的意思是:
int a = 3;
int b;
b = fun(a);
可以把a的赋值放到函数中
这样使用的条件是,你的a每次都是固定的,也就是说,你相当于做了一个过程函数
就像你要做一块年糕,你只是让机器自己生产好所有东西,然后机器自己产出年糕
不过某天我心血来潮,我需要使用不一样的糯米,这个时候最好的办法就是,给糯米这原料改一个入口,让我自己倒入糯米而不是机器自己生产这东西
函数的参数就是这样,你传入的参数可能会根据你的需要,改变函数的运行结果,当然如果你要一直做一样的东西,你可以把那个入口给封了,这就是让机器内部生产糯米一样
第二个问题,怎么把宏作头文件,你可以新建一个头文件,然后在里面各种 #define,最后在主CPP中包含这个头文件
第三个问题,头文件包含顺序问题
“在文件2中要用到文件3的内容”
这句可以这样理解:如果我file2要用到file3的东西,然后如果我顺序地包含了
#include "file2.h"
#include "file3.h"
然后编译的时候,编译器先把file2拿来编译,发现有一个函数,这个函数原来你写在file3中,但编译器并不会智能地去搜下面的头文件,它只会觉得,这个函数从来没出现过,然后就会告诉你,有一个未定义的函数出现在file2中
如果你用
#include "file3.h"
#include "file2.h"
那么先编译file3,再编译file2的时候,发现有个函数,这个函数已经在file3中定义过了,那么就没有问题