当前位置:编程学习 > wap >>

c++ 、symbian面试题 请高人解答

C/C++部分 
1、非C++内建类A和B,请使用至少3种方法,使得B能隐式转化为A. 

2、简述placement new的使用方法。 

3、explicit关键字的用途。 

4、GC是什么?为什么使用GC?简述原理 

5、构造函数是否可为虚函数,析构函数是否可为虚函数,为什么? 

6、简述设计模式中的工厂模式。 

7、实现一个智能指针类。(编程) 

symbian部分 
8、简述sdk中提供解析XML的类及使用方法 

9、活动对象框架的运作原理(使用时序图画出活动对象,AS及异步服务器之间的调用关系) 

10、以下代码可否在S60 2rd(winsw, thumb)及S60 3th (winsw,gcce)下编译通过?为什么(本体目的主要考察二版和三版的区别) 
class A 

  public: 
  void DOPrint(const TDesc& aText) 
  { 
    // do something...... 
  } 
}; 
static const char* theString = "hello world"; 
static const TPtrc thePtr = reinterpret_cast <cast TUint16*>(theString); 

LOCAL_C void DOTestL() 

  A*a = new(Eleave)A; 
  a->DoPrint(thePtr); 
} --------------------编程问答-------------------- 1.1 class B:public class A{}
1.2 A(const B&){}
第三种不记得了,不好意思。
2.efficetive c++中有全面的讲解
3.防止构造对象时,被意外更改。用于构造函数前。
4.GC是窗口服务器的一个句柄。用于绘制窗口。
5.构造函数不能为虚函数,析构可以是虚函数,多态时保证子类的析构函数能被调用。
6.工厂模式挺简单的,把创建的对象延迟创建,可以想象一个工厂只负责创建特有的对象。详细看23种设计模式。
7.这就不太会了,以免误人子弟。看AOTUptr.
8.用Parser类。
9.详细时序图看sdk.
10.这个应该是不行。

--------------------编程问答-------------------- mark! --------------------编程问答-------------------- 挖坑 --------------------编程问答-------------------- 那个GC应该不是指S60里的GC吧,应该是指程序中内存释放问题吧.
S60的SDK自己带了一个CXmlHandler类,其实也可以用些第三方的东东. --------------------编程问答-------------------- guan zhu! --------------------编程问答-------------------- 只知道3(防止隐式转换)
补充:移动开发 ,  Symbian
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,