自己准备的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++方面面试题的主要内容,如果未能解决你的问题,请参考以下文章