C++面经-某证券公司

最近因为有在准备其他方向的面试,这次C++都问麻了

一 C++多线程问题

主要问的是mutex,如何安全地使用mutex,如果在一个递归函数里使用mutex如何保证安全

太久没用C++多线程了,根本不知道。

二内存管理问题

如何管理栈上内存,如何管理堆上的内容,什么情况分配在栈上,怎么样避免分配在栈上。

然后我说了一点RAII,就开始涉及智能指针。然后问我智能指针如何保证线程安全。

三多态问题

多态是个好东西啊。我先回答了通过继承实现的运行时多态,和重载实现的编译期多态。

然后完全忘了模板的存在(主要是C++的模板确实也是争议很大)

然后就问我怎么实现管理不同类的智能指针。然后我理所应当地回答模板啊,这个时候都没想起模板也是一种多态。

然后问如果要实现这个模板的解引用该怎么

那就是重载运算符*呗

然后问 如果他管理的是一个空指针呢。那还能怎么办,调用者不判空,我自己处理的话,也只能throw error了

或者不返回对象,而返回一个Option,让调用者必须去判断是不是空的(鉴定为学Java学的)

感觉多线程答得太菜了。以后再找个时间补补吧。

#24届软开秋招面试经验大赏#
全部评论

相关推荐

评论
5
18
分享

创作者周榜

更多
牛客网
牛客企业服务