首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Meyers Singleton :静态关键字混淆

Meyers Singleton :静态关键字混淆
EN

Stack Overflow用户
提问于 2018-12-11 14:18:18
回答 1查看 156关注 0票数 0

考虑下面的代码,它本质上是Meyer的单例(希望如此)

代码语言:javascript
复制
static const std::string& foo() // Line 1
{
   static std::string str("foo");
   return str;
}

第1行中提到的静态关键字是否毫无意义?如果是的话,为什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-11 14:21:47

第1行中提到的静态关键字是否毫无意义?如果是的话,为什么?

它不是毫无意义的,如果你需要它或不取决于你的情况。static在C++中意味着在不同的上下文中有不同的东西,在这种情况下,它使这个函数只在当前编译单元上可用。在C++中实现该功能的现代方法--将函数放入匿名命名空间。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53726080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档