c/c++ 文件包含宏的问题(#include)

查看:109
本文介绍了c/c++ 文件包含宏的问题(#include)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

c++在新建一个类时,会新建一个a.h文件和a.cpp文件,a.cpp的第一句是#include a.h。
那么我想问:
1.我在另外一个类,类b中使用类a的时候,只需包含它的头文件#include a.h,那这时是不是只把a.h中的类声明代码包含在了类b文件中,还是说把类a的声明代码和实现代码都包含了?
2.不管是哪种包含,预处理程序会把相应代码插入到对应的文件中,在编译时,编译器是把每一个cpp文件分开作为一个单元来编译,还是直接对一个文件里面所有的类进行编译

解决方案

1:只把a.h中的类声明代码包含在了类b文件中
程序在编译完成后,将编译的所以文件链接成一个可以执行文件,相当于把所有代码汇总
所以只需要包含声明就行了
2:每一个cpp单独编译
如果不同cpp有联系,比如a.cpp 调用 b.cpp中的函数,b.cpp改变以后,只会编译b.cpp和b.cpp产生联系的cpp

这篇关于c/c++ 文件包含宏的问题(#include)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆