命名空间函数与类上的静态方法

新手上路,请多包涵

假设我有或将要编写一组相关函数。假设它们与数学有关。在组织上,我应该:

  1. 编写这些函数并将它们放在我的 MyMath 命名空间中,并通过 MyMath::XYZ() 引用它们
  2. 创建一个名为 MyMath 的类并将这些方法设为静态并引用类似的 MyMath::XYZ()

为什么我会选择其中一个来组织我的软件?

原文由 RobertL 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 818
1 个回答

为什么我会选择其中一个来组织我的软件?

如果您使用命名空间,您将经常遇到一个语言缺陷,即相互调用的函数必须按特定顺序列出,因为 C++ 无法在文件中进一步查看定义。

如果您使用类,则不会出现此缺陷。

将实现函数包装在一个类中比维护所有实现函数的声明或以不自然的顺序使其编译更容易和更清晰。

原文由 Boann 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题