2024.3.19

思维导图

模拟面试

1.友元的作用

答:通过关键字friend,可以让一些函数或者类,可以访问一个类中的私有数据成员。

2.匿名对象的作用

答:匿名对象就是没有名字的对象,是用来给有名对象进行初始化工作的。

3.常成员函数和常对象的作用

答:1.在成员函数()后面加上const表示是一个常成员函数表明该成员函数中数据成员不可被改变;

        2.如果非要修改常成员函数中的某个数据成员的值,可以使用mutable关键字进行修饰;

        3.在实例化的对象前加const表示是一个常对象,表明该对象中的数据成员不可被改变。

4.何为运算符重载

答:就是对运算符的重新定义,赋予另一种功能,以适应不同的数据类型。

5.静态成员的特点

答:1.静态成员分为静态数据成员和静态成员函数,在成员函数前加static修饰是静态数据成员;

       2.静态成员属于类,但不属于类的某个对象,他们在类的所有对象中是共享的;

       3.静态数据成员必须在类外进行初始化;

       4.静态成员函数只能访问静态数据成员,不可访问非静态数据成员。

6.如果父类中的一个数据成员访问权限是private,经过public继承到子类中,该数据成员的访问权限是什么

答:不可访问

7.何为菱形继承

答:菱形继承又叫钻石继承,由公共基类派生出多个中间子类,又由这些中间子类共同派生出汇聚子类。

产生的问题:

    1.汇聚子类会得到多份由中间子类从公共基类继承下来的数据成员,造成空间浪费;

    2.会对公共基类进行多次初始化或多次释放。

8.虚继承的作用

答:解决菱形继承产生的问题

9.C++中多态的概念

答:父类的指针或引用,可以指向或初始化子类的对象,调用子类对父类的重写函数,进而拓展子类的功能。

10.实现多态的重要机制

答:虚指针和虚函数表。虚指针用来存储虚函数表的起始地址;虚函数表用来存储虚函数。

11.虚析构函数的作用

答:正确引导子类释放自己的空间。

12.如何定义一个抽象类

答:在类中至少写一个纯虚函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值