自己准备的C++方面面试题

Posted xuqihong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自己准备的C++方面面试题相关的知识,希望对你有一定的参考价值。

自己整理的初级面试题,主要是一些C++方面的内容,大部分都是网上的,只是加上自己的整理而已,可能会更新,也可能咸鱼,希望不会被举报侵权吧,拜托!!

 

三大特性
封装:指数据和实现操作的代码集中起来放在对象内部,并尽可能隐蔽对象的内部细节
继承:子类可以直接使用父类的公有属性与方法
多态:父类指针可以指向子类对象,一个接口,多种方法,是对于不同对象接收相同消息时产生不同的动作

请问C++的类和C里面的struct有什么区别?
c++中的类具有成员保护功能,并且具有继承,多态这类特点,而c里的struct没有

构造函数
与类同名,无返回值

析构函数
特殊的类成员函数。没有参数,没有返回值,也没有重载,不能随意调用。在类对象生命期结束的时候,由系统自动调用释放在构造函数中分配的资源。

虚函数
在基类中声名为virtual并在一个或者多个派生类中被重新定义的函数

纯虚函数
在基类中为其派生类保留一个函数的名字,以便派生类根据需要对基类的虚函数重新定义

用变量a给出下面的定义
a) 一个整型数
b)一个指向整型数的指针
c)一个指向指针的的指针,它指向的指针是指向一个整型数
d)一个有10个整型数的数组
e) 一个有10个指针的数组,该指针是指向一个整型数的。
f) 一个指向有10个整型数数组的指针
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数
h)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数

a) int a;
b) int *a;
c) int **a;
d) int a[10];
e) int *a[10];
f) int (*a)[10];
g) int (*a)(int);
h) int (*a[10])(int);

全局变量和局部变量的区别
全局变量的生命周期是整个程序运行的时间,而局部变量的生命周期则是局部函数或过程调用的时间段

const 有什么用途
1.定义const常量
2.修饰函数的参数、返回值、甚至函数的定义体

static有什么用途?(请至少说明两种)
1.限制变量的作用域。
2.设置变量的存储域。

常用排序:
快速、选择、插入、冒泡、希尔

引用和指针
指针是变量,引用是别名。引用不能为空,指针可以为空。指针可以有多级,引用只有一级,指针可以改变,引用不能改变

重载和重写
重载:函数名相同,函数参数的类型或者个数不同
重写:子类重新定义父类虚函数的方法。







































以上是关于自己准备的C++方面面试题的主要内容,如果未能解决你的问题,请参考以下文章

2020年腾讯实习生C++面试题&持续更新中

2020年腾讯实习生C++面试题&持续更新中

2021阿里Java高级面试题总结,工作感悟

Java开发面试题!java分布式系统书籍

Java大厂技术面试题汇总!java栈最大深度

3天搞定面试那点C++算法题!