我总是使用*.h
文件作为我的类定义,但在阅读了一些boost库代码后,我意识到它们都使用*.hpp
。 我一直厌恶那个文件扩展名,我想主要是因为我不习惯它。
使用*.hpp
不是*.h
什么优缺点?
#1楼
您使用哪种扩展名无关紧要。 任何一个都可以。
我使用*.h
代表C, *.hpp
代表C ++。
#2楼
你可以随意打电话给你的包。
只需要在#include
指定全名即可。
我建议如果你使用C来使用.h
和使用C ++时使用.hpp
。
它最终只是一个惯例。
#3楼
Codegear C ++ Builder将.hpp用于从Delphi源文件自动生成的头文件,以及.h文件用于“自己的”头文件。
所以,当我写一个C ++头文件时,我总是使用.h。
#4楼
在我90年代早期的一个工作中,我们分别使用.cc和.hh作为源文件和头文件。 我仍然喜欢它的所有替代方案,可能是因为它最容易打字。
#5楼
我最近开始使用*.hpp
用于c ++标头。
原因是我使用emacs作为我的主编辑器,当你加载*.h
文件时它会自动进入c模式,当你加载*.hpp
文件时它会进入c ++模式。
除了这个事实,我认为没有充分理由选择*.h
不是*.hpp
,反之亦然。
来源:oschina
链接:https://my.oschina.net/u/3797416/blog/3159199