彻底搞明白win32编程 .h头文件和.cpp源文件关系

一.想把项目的全局参数都放在一个文件里,好方便对初始值修改。

步骤:
1.新建一个.h头文件,只声明参数为全局变量(注意是声明!!!)。
这里写图片描述

2.一定要extern,这才是声明全局变量 而且 一定不能赋初值

extern int a;
  • 根据C++标准的规定,一个变量声明必须同时满足两个条件,否则就是定义:
    (1)声明必须使用extern关键字;
    (2)不能给变量赋初值;
  • 头文件请不要定义任何变量

3.新建一个.cpp文件,包含该头文件,定义变量(可赋初值)。
这里写图片描述

int a=10;

把声明该变量的头文件setting_parameter.h包含进去
这里写图片描述

我这里为什么#include它变成了注释,是因为vs 2013有一个stdafx.h头文件,让你把所有你自己要用的头文件 放在stdafx.h里。
这里写图片描述
这里写图片描述
这样你有多个cpp文件要使用定义的参数时,就不用在每一个cpp里包含setting_parameter.h文件了。

特别是还有可能会有多个头文件要包含,那样就需要在每一个cpp包含每一个头文件。

而放在stdafx.h里,只需要在每个cpp里包含stdafx.h一次就行了。

如下:
这里写图片描述

二.想把项目的函数都放在一个文件里,好方便对函数修改。

步骤:
1.新建一个.h头文件,只声明函数(注意是声明!!!)。
这里写图片描述

void jump(int x,int y);

2.新建一个.cpp文件,包含该头文件,完整实现函数
这里写图片描述

void jump(int x,int y)
{
    .........
}

3.注意,在实现函数的时候,可能会用到库函数和自己定义的参数,这个时候,应该把头文件包含在stdafx.h里,然后直接包含stdafx即可。
这里写图片描述
这里写图片描述
4.这时,你可能会想在main函数里包含functions.cpp,好调用里面的函数,其实是不用的。
应该在main函数里包含functions.h,但是main里面已经包含了stdafx.h,所以不用再做啥了,可以直接运行了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值