class A
{
private:
A(){};
~A(){};
public:
static A* GetInstance( void )
{
static A obj;
return& obj;
}
};
我假设如果发生某些bad
事情只会在第一次发生,因为类构造函数仅在第一次调用GetInstance
发生时才被初始化,我不知道 C++ 的深度,我不信任 C++,所以当我需要指向此类的指针,它将在我当前正在执行的函数中多次使用:
A* ptr = A::GetInstance();
if( ptr )
{
检查指针的有效性,我相信该方法返回obj
存储值的地址,以便ptr
指向它,我猜它can't
失败了。
请注意,我不是在谈论一个小型应用程序,我目前正在开发一个 500,000 多行的 MMO 服务器应用程序,该应用程序可以处理数千个客户端,并且必须保持打开数周而不会崩溃,防御性编程是最低要求。是否可以确定100%安全使用ptr
而不检查其有效性?