可能重复:
命名空间 + 函数与类上的静态方法
哪里是最明智的编写方式,例如,一个看起来像的函数
Point intersection(const Line &L1, const Line &L2);
(假设我已经写了课程Point
和Line
)?
也许我可以让这个问题更准确一点:我正在考虑以下选项:
- 写一个全局函数(在line.h中声明,在line.cpp中写)
- 编写类的静态方法
Line
- 使用命名空间。
- 改写一个函数
Point Line::intersection(const Line & otherLine);
我不喜欢最后一个选项,因为我不希望我的函数是“不对称的”(我的代码中还有其他几个类似的函数示例)。目前它们是全局函数(如选项 1 所示),但我知道这不是“好习惯”。至于静态方法和命名空间,我还不熟悉这些,所以我不确定。
你认为“最好”的设计是什么?
感谢您的见解!
编辑:让您了解我的项目的规模:50 到 100 个班级。