1.这是一个单例模式的实现,请丰富下面的代码,解决该模式合适的时候释放m_...

发布于 2022-03-03 16:04:48

1. 这是一个单例模式的实现,请丰富下面的代码,解决该模式合适的时候释放m_pInstance指向空间的问题。

class CSingle
{
 public:
 static CSingle * GetInstance()
 {
 if(m_pInstance == NULL)
 m_pInstance = new CSingle()
 return m_pInstance
 }
 private:
 CSingle(){}
 static CSingle * m_pInstance
 // 添加代码
}

(2)
class Engine
{
//
}
class Underpan
{
//
}
class Wheel
{
//
}
class Car
{
public:
 Car(Underpan u, Wheel w, Engine e)()
 {
 }
 fun()
 {
 //dosomething
 }
}
// 以下为需改造的代码
int main(int argc, char* argv[])
{
 Engine engine = Engine()
 Underpan underpan = Underpan()
 Wheel wheel = Wheel()
 ICar* car = new Car(underpan,
        wheel, engine)
 car.fun()
 if(car != NULL)
 {
 delete car
 car = NULL
 }
 return 0
}
// 以上为需改造的代码




使用工厂方法模式将以上需改造部分的代码重写一下

关注者
0
被浏览
61
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看