c++工程师面试题目 在面试时,会有一些面试官通常都会问到的问题
针对这些常见面试问题,我们提前预备好自己的答案,是格外有必要的
下面我给大家带来 c++工程师面试题目 2025,期望能关怀到大家
c++工程师面试问题 1、 c++是面对对象的编程语言吗
C++中虚函数(virtual) 是什么
(1)C++不是纯面对对象的语言,C++是面对对象和过程的,由于 C++支持类和过程
(2)虚函数(virtual)具有传递性,即子类中对父类的虚函数的重写,也是一个虚函数 ,不过函数的参数表也要一样
(3)可以让成员函数操作一般化,用基类的指针指向不同的派生类的对象时,基类指针调用其虚成员函数,则会调用其真正指向对象的成员函数,而不是基类中定义的成员函数(只要派生类改写了该成员函数)
若不是虚函数,则不管基类指针指向的哪个派生类对象,调用时都会调用基类中定义的那个函数
2、 谈谈指针和引用的区分
指针用操作符“_”和“-”,引用使用操作符“”
相同点是:指针与引用都是让你间接引用其他对象
区分:(1)
指针是一个实体,指向一块内存,它的内容是所指内存的地址;而引用仅是个别名,是某块内存的别名
引用使用时无需解引用(_),指针需要解引用; (3)
引用只能在定义时被初始化一次,之后不行变,“从一而终”;指针可变; (4)
引用没有 const 类型,指针有 const 类型,const 的指针不行变; (5)
引用不能为空,指针可以为空; (6)
“sizeof 引用”得到的是所指向的变量(对象)的大小,而“sizeof 指针”得到的是指针本身(所指向的变量或对象的地址)的大小;typeid(T) == typeid(T) 恒为真,sizeof(T) == sizeof(T) 恒为真,但是当引用作为成员时,其占用空间与指针相同(没找