设为首页 加入收藏

TOP

C++知识类面试题
2014-11-24 01:26:05 来源: 作者: 【 】 浏览:8
Tags:知识 试题

1. 一个系统里面有多个线程, 其中一个线程想终止另外一个线程, 该怎么实现.


2. 为什么要用virtual destructor


3. 什么是heap corruption


4. Semaphore VS Mutex


5. C++中的static, 怎么用,内存在哪里分配,等等


6. sizeof一个指针和sizeof一个指针指向的空间有什么不同?


7. char* 和char[]有什么区别?


8. 操作系统的Page是怎么做的?


9. 什么是Thrashing


10. 什么是volatileu关键字 在什么情况下需要使用?


11. 什么是critical section



12. C++里面的dynamic_cast如何实现,为什么dynamic_cast要求被cast的指针指向的类
至少要有一个virtual method


13. virtual inheritance 为什么能够避免导出类中有多于一个的virtual base class
的copy


14. deadlock’s four condition


15. 关于C++ 处理异常的方法


16. static 变量最大的问题是什么(考虑多线程)?


17. state Machine 的几种实现方法, 各自的优缺点是什么


18. 多线程程序里,你最喜欢哪种同步操作? Mutex是大家用得最多的, 为什么?Mutex有什么不好? (overhead,serialize,deadlock), 给例子。如何避免这些坏处?(lock-free算法, 比如lock-free的queue,stack,hashtable)一般用什么办法来写lock-free算法?(用CAS等原子操作,等等), 如何实现一个lock-free的queue (coding )


19. strlen(“hello”)= , sizeof(“hello”)=


20. 如果main函数只有如下结构
int main(…)
{
Try{…}
catch(){…}
}
并且这个catch语句catch了所有的exception,但是这个程序还是coredump了,问可能是什么问题引起的。


21. singleton, 多线程, 如何做double check


22. Command Pattern


23. 同步/异步IO和阻塞/非阻塞IO的区别?


24. 写一个thread safe lazy initialization 的singleton


25. Map Reduce和Multi-thread的trade-off


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇.NET面试题大全 初级程序员 中级.. 下一篇经典.net面试题(微创+微软)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: