Qt,C++面经
记录一波自己的面试经历,也给准备找工作和实习的兄弟一些面试问题经验,希望我和大家都能能快快找到工作,呜呜┭┮﹏┭┮
注:题主答得很烂,各位看看题目就行,答主的答案仅供参考。
C++的private在继承的时候,子类可以获取吗,在实际项目中有什么用:
private子类不能继承,protect可以继承。实际项目不知道
C++都+在什么地方,你认为C++的特色是什么:
C++对比C语言主要在于多态,多态,和STL(自我发挥,瞎编的)
如果自己实现以下字符串拷贝的函数,需要考虑到什么:
编码,长度问题(就想到这俩)
虚函数是什么,虚函数表在程序中有几份:
虚函数是实现接口的,只定义不实现,可以让派生类去自定义。只有一份
new的对象能free吗
不能
Vector和list有什么区别:
vector底层是数组,list底层是双向链表,vector随机读取速度块,增删速度慢,list增删速度块,首位元素获取速度快
vector和list实际工作中的使用场景:
一般大量读的时候选择vector,一般修改多,顺序获取数据的地方用list
vector和list在什么情况下迭代器会失效:
vector有可能会失效,因为添加数据可能会进行扩容,导致迭代器失效,list底层是数组,删除增加不会影响迭代器
map和unordered_map有什么区别:
map底层是红黑树,unordered_map底层是哈希表。
多线程用的多吗?都要那些方式:
消息队列,信号,信号量,我用的信号比较多。
智能指针都有那些,区别是什么:
有三个,unique,share,wrek,unique最安全,且占用内存小,share可以被多个指针指向,占用内存大,但是不线程安全,wreak是share的升级版,解决了线程安全
引用和指针的区别,常值引用是什么?
引用是一种特殊的指针,指向一个地址,只能读不能改,类似const修饰过的变量,常值引用是指向一个常值的引用(废话,这个其实我现在也没整明白)
Qt4和Qt5的槽函数有什么区别
Qt4类似宏定义,不会检查传入参数对错,并且不会指定具体发出者是谁,存在安全问题(这块自我发挥的)
如果用QPainter绘图,想放大缩小怎么办
重定义鼠标事件(我觉得应该就是这么答,但是听面试官的语气感觉不是很完善)
Qt的自定义库和Stl的有什么区别,比如Qlist和list的区别
Qt会用Qvariant进行封装,并且进行了线程安全的定义(这块完全是我瞎编的,我也不知道答案)
结语:其实知识点就是这么几个,剩下的基本上都是绕着自己的项目来,加油各位
#C++面试##面试经验 ##QT##C++面试题##面经#