对gcc来说应该是一样的,对不对?哪一个更受欢迎,我现在正在准备一个从头开始的项目,我想从这两个中挑选一个。
谢谢
发布于 2009-12-08 04:26:36
在C++中,文件扩展名实际上并不重要。使用.h、.hpp、.hxx或不使用文件扩展名都是约定的。
标准库的头文件不使用文件扩展名。包括Boost在内的许多项目都使用.hpp。许多项目都使用.h。只需选择一个并在项目中保持一致即可。
发布于 2011-08-04 02:23:59
编译器不区分这两个扩展,因此从技术上讲,您使用哪一个扩展并不重要。就我个人而言,我将.hxx扩展用于仅在项目内部使用的头文件,而将.hpp用于那些应该随库/软件发布的头文件。
发布于 2015-07-14 13:07:19
鉴于我最近的一项发现,我建议我们重新开始这次讨论。在过去的9年中,我对我的C和C++项目中的源文件使用了以下命名约定。
< code >F29并入其中
例如,在MyStringFunctionA.cpp中定义了ANSI实现MyStringFunctionA,而在MyStringFunctionW.cpp中定义了MyStringFunctionW (宽字符)实现。MyStringFunctionA.cpp和MyStringFunctionW.cpp包含原型、左方括号和右方括号以及头,适用于宽字符版本的UNICODE。函数体在函数定义块内的INI文件中定义,该文件为#included。
与通用TCHAR映射相结合,这种方法极大地简化了Unicode和ANSI版本的维护,这两个版本仍在使用中。
然而,当我开始将我的代码库迁移到Visual Studio 2013时,我发现了一个恼人的变化,一开始是令人困惑的。尽管一切都编译得很干净,但当我的一个INL文件在代码编辑器中打开时,我会看到几十个Intellisense“错误”列在“错误”窗口中。我引用了术语“错误”,因为它们不是真正的错误;当INL文件关闭时,它们就消失了,并且iNL被拉入其中的C和CPP文件可以正确地编译、链接和运行。
https://stackoverflow.com/questions/1862658
复制相似问题