在头文件之前包含其他头文件与在源文件前包含头文件有什么区别
展开全部
相同点:
头文件与源代码都是源文件,都用纯文本文件存储,都需要遵照C/C++语言规范来写,都可以使用类型定义和常、变量定义,都可以包含函数的声明和实现,都能包含宏定义,都使用相同的调用规范。
不同点:
C/C++的编译器规定源代码文件必须包含函数入口,即main函数,或者winmain函数。而头文件不得包含函数入口,也就是说,头文件不可以单独编译成一个程序,仅仅包含程序片断或者仅仅定义常、变量。
关联:
头文件是专为源代码调用而写的静态包含文件,可被源代码文件中的#include编译预处理指令解释,而将头文件完整拷贝到源代码的指令处,从而在编译时相当于在源代码中插入了函数声明或者实现。
某些头文件包含了静态库中的函数调用声明,包含了LIB文件的调用信息,编译时静态链接进程序;而某些头文件是专为方便API调用而写的,里面包含了动态链接库的调用信息和规范,只有在运行时将DLL载入内存提取函数执行。
也就是说,其实你将头文件里的信息完全写到源代码里,是可以实现完全相同的功能的。如果你想要学写头文件,可以参照标准C/C++库的h文件。
头文件与源代码都是源文件,都用纯文本文件存储,都需要遵照C/C++语言规范来写,都可以使用类型定义和常、变量定义,都可以包含函数的声明和实现,都能包含宏定义,都使用相同的调用规范。
不同点:
C/C++的编译器规定源代码文件必须包含函数入口,即main函数,或者winmain函数。而头文件不得包含函数入口,也就是说,头文件不可以单独编译成一个程序,仅仅包含程序片断或者仅仅定义常、变量。
关联:
头文件是专为源代码调用而写的静态包含文件,可被源代码文件中的#include编译预处理指令解释,而将头文件完整拷贝到源代码的指令处,从而在编译时相当于在源代码中插入了函数声明或者实现。
某些头文件包含了静态库中的函数调用声明,包含了LIB文件的调用信息,编译时静态链接进程序;而某些头文件是专为方便API调用而写的,里面包含了动态链接库的调用信息和规范,只有在运行时将DLL载入内存提取函数执行。
也就是说,其实你将头文件里的信息完全写到源代码里,是可以实现完全相同的功能的。如果你想要学写头文件,可以参照标准C/C++库的h文件。
参考资料: 百度一下
展开全部
#include "xxxx.h"
这条语句的作用,就是把xxxx.h文件的所有内容插入到这条语句所在的地方
然后编译器从上到下编译一个源文件
明白了吧
也就是说 如果你在 a.h 里 include "b.h"
然后在 a.cpp 里 include "a.h"
那结果就是 编译器把 b.h 的内容放在 a.cpp 的最前面 ,然后把 a.h 的内容放在次前面,下面才到 a.cpp 的内容
这条语句的作用,就是把xxxx.h文件的所有内容插入到这条语句所在的地方
然后编译器从上到下编译一个源文件
明白了吧
也就是说 如果你在 a.h 里 include "b.h"
然后在 a.cpp 里 include "a.h"
那结果就是 编译器把 b.h 的内容放在 a.cpp 的最前面 ,然后把 a.h 的内容放在次前面,下面才到 a.cpp 的内容
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
文件存储,都需要遵照C/C++语言规范来写,都可以使用类型定义和常、变量定义,都可以包含函数的声明和实现,都能包含宏定义,都使用相同的调用规范。
不同点:
C/C++的编译器规定源代码文件必须包含函数入口,即main函数,或者winmain函数。而头文件不得包含函数入口,也就是说,头文件不可以单独编译成一个程序,仅仅包含程序片断或者仅仅定义常、变量。
关联:
头文件是专为源代码调用而写的静态包含文件,可被源代码文件中的#include编译预处理指令解释,而将头文件完整拷贝到源代码的指令处,从而在编译时相当于在源代码中插入了函数声明或者实现。
某些头文件包含了静态库中的函数调用声明,包含了LIB文件的调用信息,编译时静态链接进程序;而某些头文件是专为方便API调用而写的,里面包含了动态链接库的调用信息和规范,只有在运行时将DLL载入内存提取函数执行。
也就是说,其实你将头文件里的信息完全写到源代码里,是可以实现完全相同的功能的。如果你想要学写头文件,可以参照标准C/C++库的h文件。
不同点:
C/C++的编译器规定源代码文件必须包含函数入口,即main函数,或者winmain函数。而头文件不得包含函数入口,也就是说,头文件不可以单独编译成一个程序,仅仅包含程序片断或者仅仅定义常、变量。
关联:
头文件是专为源代码调用而写的静态包含文件,可被源代码文件中的#include编译预处理指令解释,而将头文件完整拷贝到源代码的指令处,从而在编译时相当于在源代码中插入了函数声明或者实现。
某些头文件包含了静态库中的函数调用声明,包含了LIB文件的调用信息,编译时静态链接进程序;而某些头文件是专为方便API调用而写的,里面包含了动态链接库的调用信息和规范,只有在运行时将DLL载入内存提取函数执行。
也就是说,其实你将头文件里的信息完全写到源代码里,是可以实现完全相同的功能的。如果你想要学写头文件,可以参照标准C/C++库的h文件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询