#include <iostream>
using namespace std;
class Single
{
private:
int m_num;
Single(int num):m_num(num){};
public:
static Single* Get_instance(int num){
static Single instance(num);
return &instance;
}
static void Destroy(Single* instance){
delete instance;
instance = NULL;
}
void show(){ cout<<m_num<<endl; }
};
int main(){
Single* tmp = Single::Get_instance(1);
tmp->show();
Single* second_try = Single::Get_instance(2);
second_try->show();
cout<<tmp<< ' ' << second_try << endl;
return 0;
}
就是实现了一个单例模式,要了两个实例改变了一下成员变量,然后想问下为啥运行结果是这样
这。。好像是函数里面定义的静态变量,初始化只会执行一次,无论该函数被调用几次