* .h或* .hpp用于类定义 [英] *.h or *.hpp for your class definitions

查看:99
本文介绍了* .h或* .hpp用于类定义的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直使用 *。h 文件作为我的类定义,但是在读了一些boost库代码后,我意识到他们都使用 * .hpp 。我总是对该文件扩展名有反感,我认为主要是因为我不习惯。

I've always used a *.h file for my class definitions, but after reading some boost library code, I realised they all use *.hpp. I've always had an aversion to that file extension, I think mainly because I'm not used to it.

使用<$ c有什么优点和缺点? $ c> *。hpp *。h

推荐答案

以下是对C和C ++头文件进行不同命名的几个原因:

Here are a couple of reasons for having different naming of C vs C++ headers:


  • 自动代码格式化对于格式化C和C ++代码有不同的指导方针。如果标题由扩展名分隔,您可以设置您的编辑器自动应用适当的格式

  • 命名,我一直在项目中有用C编写的库,在C ++中。由于标题通常具有相似的名称,即Feature.h vs Feature.hpp,它们很容易区分开来。

  • 包含,也许你的项目有更适合的版本用C ++编写,正在使用C版本(见上面的点)。

记住,如果头文件是以它们实现的语言命名的,你可以很容易地找到所有的C头文件并检查C ++版本。 ,C是 C ++,它可能是非常危险的混合和匹配,除非你知道你在做什么。正确命名您的来源有助于区分语言。

Remember, C is not C++ and it can be very dangerous to mix and match unless you know what you are doing. Naming your sources appropriately helps you tell the languages apart.

这篇关于* .h或* .hpp用于类定义的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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