京东一面+二面+hr面,许愿offer
2020.8.12京东一面
1.c/c++的区别
c面向过程 c++面向对象 又说了继承 多态 类 结构体 引用 指针等等
2.多态
成立的条件:重写 继承 父类指针、引用指向子类对象
效果:相同语句实现不同效果
原理:根据具体对象获得vptr,通过vptr找到vtable ,通过vtable找到相应的函数地址。
3.重载
相同名称,不同的参数类型,位置,个数,发生在一个类中。
4.gdb调试
没搞过。。。需要实操。。
5.vector 扩容的时候,进行的拷贝用的哪个函数
uninitialized_copy。具体的过程就是先allocate进行内存分配,并使用一个迭代器进行指向,然后使用uninitialized_copy将原有的vector的值每一个copy一份到刚才分配的未初始化的内存。所以这里进行的是copy构造。并且uninitialized_copy规定,当有一个拷贝构造失败,则回退所有的。
6.vector的push_back后,外部修改刚才的值,是否改变。
vector进行push_back调用的是哪个构造函数 copy构造
不发生改变,因为进行的是copy构造,是将原有的值copy一份到vector.
7.const的作用
8.const函数中想修改对象 怎么办 mutable
9.智能指针原理 shared_ptr unique_ptr
多个指针指向同一对象 shared 引用计数
只能一个指针指向一个对象 unique
智能指针能否用在父类指针指向子类对象 可以
9.构造函数有哪些
无参 有参 拷贝构造。
10.拷贝构造的场景 赋值运算符的场景
拷贝构造四种场景:初始化等号 初始化括号 实参传形参 函数返回对象
赋值运算符场景:A a A a1 a1=a;
11.close_wait是哪一方的
被动关闭的一方。主动关闭的一方发送FIN报文段,被动关闭的一方接收到并发送ACK报文段后进入close_wait
12.多线程说一说
从线程和锁两个方面说。我答的是线程相对进程的优点 以及互斥锁 条件变量。其实还有读写锁 自旋锁。
13.自旋锁知道吗
自旋锁:在线程未获得锁时,线程不会像互斥锁那样挂起,而是占用cpu不断轮询查询锁。
14.有多个线程,一个线程挂了,其他线程?
整个进程崩掉,其他线程自然挂掉。
15.测试主要使用的是什么工具
python + selinum
16.自己实验中core dump返回的singal是什么。 说自己也没看
signal 6 – SIGABRT 多次free 多次fclose
signal 11 – SIGSEGV 引用空指针成员 fclose空指针。
17.tensorflow与pytorch的区别
18.怎么禁止一个函数被重写
面试官自答:在一个函数后面使用finall,防止这个函数被子类重写
下去查了一下:还有一个override的用法也需要了解,override写在函数后,保证这个函数是父类重写的,这样编译器会帮助我们检测名称,参数类型的错误。
19. linux查看线程命令
top
20.反问。 搜索部门的
本来30分钟,面了50分钟左右。
学会gdb调试,copy的实验,const函数的实验,做一个http服务器。 vector具体调用的函数
2020.8.18京东二面
1.你非科班,为什么想搞开发啊。你们和计科在课程设置上有哪些是一样的吗?(emmm)
2. C++项目经验有点缺失啊,没项目那就问基础吧(emmmm)
(这两个一答,我自己底气就不足了。)
3.构造函数可以是虚函数吗?
不可以 因为虚函数的调用是用到虚函数表的,而虚函数表的通过虚函数指针找到的,虚函数指针又是放在对象内存里,此时对象内存没有分配,也没有初始化。所以不可以。
4.空类可以存在吗? 合理吗?
空类是可以存在的,编辑器会为空类分配1个字节的空间,这样可以防止类创建对象时产生相同的地址。
5.构造函数的继承,private public说一下。
可以进行访问控制,private是只能在类里面进行访问,public是外面里面均可以访问。
6.父类的potected,子类确定可以访问到吗?
(这个不明白啥意思)这个不就是可以访问的吗?给我问懵了。
7.构造函数设置为private有什么效果
构造函数设置为private以后,这样的话就不能静态的创建对象了。还有自己没答出来的应该是这个类应该就不能被继承了。
8.构造函数设置为protected,怎么new创建对象呢。
通过设置一个类成员函数,然后new一个对象就可以了。
反问
1.技术栈 C++ 少量python与golang
2.给点建议(概念落地项目) 本来30分钟的,20多分钟完了。
2020.8.25 hr面
1.你的个人优势在哪里?
2.你当时选择的本科学校的理由?
3.你目前在所在公司实习的原因?
4.个人优缺点?