PC客户端研发 2014秋季笔试题
一、简答题(每题10分)
1. 重载和重写的区别。
2. 为什么析构函数往往是virtual的。
3. 动态链接库和静态链接库的优点和缺点。
4. 进程间通信的方式。
5. 画出观察者模式的类图。
二、算法设计题
1.使用C/C++语言写一个函数,实现字符串反转。要求不能用任何系统函数,且时间复杂度最小,函数原型是:char *reverse_str(char *str)。(10分)
2.给定一个如下输入格式的字符串:(1,(2,3),(4,(5,6),7))括号内的元素可以是数字,也可以是另一个括号。请实现一个算法消除嵌套的括号,比如把上面的表达式变成:(1,2,3,4,5,6,7),如果表达式有误请报错。(15分)
三、系统设计题(25分,选做一题,由于没选第一题,所以忘记题目了)
(大体题意是这样的,具体的忘记了)
远程DLL注入的方法有很多种,如CreateRemoteThread()。
1. 请举出其他几种远程DLL注入的方法,并简述其基本原理。
2. 用伪代码或者C++详细实现CreateRemoteThread的原理。