经纬恒润 软件开发c++一面

1  讲一讲你对多态的理解

回答:多态就是不同对象对同一个函数的不同表现。静态多态可以用函数重写实现;动态多态需要使用虚函数来重写函数方法。

2 class A{
//...
virtual void Execute();
}
class B:publiC A{}
//...
virtual void Execute();
}
A* pa = new B();
pa->Execute();
讲一讲,pa这个变量,是怎么找到B这个方法的

回答:Execute函数在A中被定义,因为是虚函数,所以在B中被重写。当使用pa->Execute()时,会去查找B的vtable,然后调用B中重写的方法。

3 了解过STL库吗,vector是什么,底层实现原理能讲讲吗?

4 有了解过c++的新特性吗?回答:智能指针。
智能指针是什么?底层实现原理是啥。

5 指针和引用的区别是什么?

6 在使用多线程时,怎么保证线程能够安全退出?
回答:使用pthread_join。

全部评论
佬,隔几天收到笔试通知了
点赞 回复 分享
发布于 09-28 00:05 云南

相关推荐

头像
11-13 12:19
已编辑
南京技师学院 Java
美团 测开 23k*15.5 硕士双一流
点赞 评论 收藏
分享
评论
2
16
分享
牛客网
牛客企业服务