在程序编译的时候,头文件不参与编译,源文件单独编译(VC),但编译源文件时,会展开其包含的头文件

本文深入探讨了宏定义在C++编程中如何影响代码的编译过程,特别是通过比较不同文件中宏定义的顺序来展示其工作原理。通过分析example.h和example.cpp中的代码片段,解释了宏定义如何在编译时被处理,以及它们之间的相互作用是如何确保程序正确编译和运行的。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这里的顺序主要是为了宏定义的问题,例如:

 

//example.h

 

#ifndef _EXAMPLE_

#define _EXAMPLE_ 10

#endif

 

 

//example.cpp

 

#define _EXAMPLE_  20

#include "example.h"

 

 

因为先编译example.cpp 所以_EXAMPLE_ 先被定义成20,然后展开example.h,因为_EXAMPLE_ 已经被定义,所以_EXAMPLE_ 不会被定义成10

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值