1
3
强烈建议使用未命名的命名空间。 为什么?因为这使得规则很容易记住:如果我创建的变量/函数/模板是翻译单元的本地变量,我会无条件地将其放在一个未命名的名称空间中,然后就不必再担心任何事情了。
a non-inline variable of non-volatile const-qualified type that is neither explicitly declared extern nor previously declared to have external linkage
也会有内部链接,但您真的要选择将非常量变量放在未命名的命名空间中,而将常量变量放在命名空间之外吗?如果您不小心忘记了
你会混搭吗?真奇怪:
未命名的名称空间是免费的-唯一的代价是需要输入的字符。这意味着没有人必须盯着这段代码,并且必须回忆起围绕[basic.link]规则的所有微妙之处。 |
2
1
未命名的命名空间是多余的,在这种情况下使用它没有任何好处。
唯一一个我会
|
fedemengo · 自定义类的适当构造函数 7 年前 |
Jonathan Mee · 查找选定对象的索引 8 年前 |
Jonathan Mee · 为什么我不能用make_pair打领带? 8 年前 |
ItamarBe · 运行java7的平台的c++11可用性 9 年前 |
Dirt · 是否有方法阻止派生类进一步实现虚拟函数? 10 年前 |
DalekSupreme · 使用以前未知的模板存储通用对象 11 年前 |