读书人

header file是如何写的

发布时间: 2012-03-09 16:54:57 作者: rapoo

header file是怎么写的?
我看了看stdio.h之类的,里边都是preprocessors和一些函数的定义。
听说具体实现放在.h里不好?是这样的吗?
应该怎么着?您给支一步。。谢了

[解决办法]
头文件一般会被多个文件包含,为了避免重定义的问题,一般只在头文件里声明变量或函数。
另一方面,头文件是为了暴露接口,从而隐藏细节。
[解决办法]
cpp
[解决办法]
是声明,实现才叫“定义”。
是这样的,函数实现不放头文件,主要原因是:
(1)有声明对编译器来说就够了;
(2)头文件就是为了被许多不同文件包含的,而不是每次只允许一个文件包含,因此如果其中包含函数实现或变量定义会引发重定义错误;而一个函数或变量仅被声明多次是没关系的。
(3)许多库和产品代码是不公布实现细节的,他们只愿意把.h和包含目标代码的.lib,.dll给你,而不愿把.c也给你。
[解决办法]
C++的特性多,那就完全是另外一个故事了。
不过实质上都没什么两样,所有编译器在编译时需要的,都得放在头文件中。
比如C++中的模板,其实例化,特化等都在编译时完成,因此不得不放进头文件中。

读书人网 >C语言

热点推荐