【问题标题】:how to interpret the static code in c++11如何解释c++11中的静态代码
【发布时间】:2020-06-08 13:16:14
【问题描述】:

我刚刚找到了一些用 C++11 编写的源代码。代码是这样的:

inline Class& function() {
    static Class x;
    return x;
}

然后为了使用我遇到的这个功能:

function().app();

这个 function() 是否实现了单例模式?它是如何工作的?我觉得很奇怪。

【问题讨论】:

标签: c++ c++11 static singleton


【解决方案1】:

subroutine-static 表示在堆栈上,return & 表示返回一个指向它的指针,所有这些都非常奇异,但不能保证在进程的其他地方没有 Class x。维基说你必须隐藏构造函数,有一个类方法来返回对类静态对象的引用:https://en.wikipedia.org/wiki/Singleton_pattern

【讨论】:

    猜你喜欢
    • 2017-12-08
    • 1970-01-01
    • 2011-03-10
    • 1970-01-01
    • 1970-01-01
    • 2015-03-23
    • 1970-01-01
    • 1970-01-01
    • 2018-05-16
    相关资源
    最近更新 更多