题库 软件开发 题目列表 1. 这是一个单例模式的实现,请丰富下面的代码,...
问答题

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
评论
36
点击