C++的一个特性是能够创建未命名(匿名)命名空间,如下所示:
namespace {
    int cannotAccessOutsideThisFile() { ... }
} // namespace
您会认为这样的功能是无用的 - 因为您无法指定命名空间的名称,所以无法从外部访问其中的任何内容.但是这些未命名的命名空间可以在它们创建的文件中访问,就好像你有一个隐含的using子句.
我的问题是,为什么或何时使用静态函数会更好?或者他们基本上是两种做同样事情的方式?
假设我已经或即将编写一组相关函数.假设他们与数学有关.在组织上,我应该:
MyMath命名空间中并通过它们引用它们MyMath::XYZ()MyMath,并将这些方法设为静态,并引用类似的方法MyMath::XYZ()为什么我会选择一个作为组织我的软件的方法?