*.h 还是 *.hpp 用于 C++ 头文件:应该选择哪个扩展名?
大家好!我是 C++ 新手,正在开发我的第一个小项目——一个用于矩阵操作的类。我注意到在不同的项目和教材中,头文件使用了不同的扩展名:有些人写 `matrix.h`,另一些人写 `matrix.hpp`。这让我感到困惑。
我习惯在 C 中所有头文件都使用 `.h` 扩展名。但 C++ 是一种独立的语言,尽管在很大程度上基于 C。当我编写类定义时,例如:
```cpp
// matrix.h
#ifndef MATRIX_H
#define MATRIX_H
class Matrix {
public:
Matrix(int rows, int cols);
void print() const;
private:
int rows_, cols_;
double* data_;
};
#endif
```
……我觉得使用 `.hpp` 更合理,这样可以明确表示这是 C++ 而不是 C。但有些同事说 `.h` 是标准,而 `.hpp` 只会造成混淆。另一些人则认为 `.hpp` 是“真正” C++ 代码的标志。
请问,在现代 C++ 中哪个扩展名更正确?是否有统