c++面试题(1)
1. 构造函数与析构函数是否可以被重载,为什么?
2. 指针和引用的区别。
3. malloc和new的区别。
4. 字符串反转。用两种方法,第二种方法只用一个数串,直接互换。
5. 一个time类,包含minute和sec两个数据成员。模拟秒表,每次走一秒,满60秒进一分钟,此时秒又从0开始。
Class Time
{
public:
Time(){minute=0;sec=0;}
Time(int m, int s):minute(m),sec(s){}
Time operator++();
Time operator++(int);
Private:
Int minute;
Int sec;
};
(1) Time:operator++()和Time:operator++(int)的区别;
(2) 实现这两个重载函数。
6. 带镖头的单链表倒序。
7. 二叉树的前序和中序遍历如下:
前序:ABCDEF 中序:CBDAEF
画出该树。
8. 画出8,9,11,17,28,30,40在二叉搜索树中的位置。
9. 写一个冒泡排序的算法。
10. 栈和队列的相同和不同。