栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > C++面试题库

C++知识类面试题

C++知识类面试题

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

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/265673.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号