我希望能够为类提供默认名称,以便在记录错误时始终可以使用一个合理的名称。我不需要(或不想)这个名称成为课程本身的一部分。此默认名称永远不会更改,因此是const
甚至constexpr
的理想选择,但是无论出于何种原因您都无法执行constexpr QString
或constexpr std::string
。
在我的cpp文件中,这样做更好吗?>
namespace { const QString NAME("Some Name"); }
或
名称空间。namespace { static const QString NAME("Some Name"); }
我知道这两个版本都将导致
NAME
具有内部链接,但是最佳实践是什么?我已经看到了一些关于将全局变量移动到匿名名称空间的讨论,但是没有一个提及使用static
inside
参考:
我希望能够为类提供默认名称,以便在记录错误时始终可以使用一个合理的名称。我不需要(或不想)这个名称成为课程本身的一部分。这个...
static
在匿名名称空间中是完全多余的。它会无