1、简述构造函数、析构函数和拷贝构造函数的特点和用途。
A、构造函数特点:函数名和类名相同;公有访问属性;无函数返回类型;对象被创建之
后自动调用;可以重载;可在类内或类外定义
B、析构函数特点:名字特别加~;没有参数;不能重载;对象生存期时,系统自动调用;
析构函数作用:在对象生存期结束之后自动执行清理工作
C、拷贝构造函数特点:与类同名;没有返回类型;只有一个为该类对象的引用作为参数;
作用:实现对象之间的初始化
可以实现同一个数据对象的不同场合不同途径的共享,同时防止错误操作对数据的更改。
3、简述 this 指针的特点
指向本类对象,其值时当前被调用的成员函数所在的对象的起始地址,编译系统自动实现。
4、简述静态成员和静态成员函数的特点用途(static)
每个类中只有一个拷贝,可以实现同一类不同对象之间实现数据共享(static int number);
生存期同程序周期一样长;
初始化不加访问限定符且前面不加(static),例如 int CStudent:: TotleNumber=120;
静态成员函数:(例如:static int set_totle_len(); )
属于类的静态成员,但都不是对象成员;公有静态成员函数可以通过类名或者对象名来调用,
一半的非静态成员函数只能通过对象名来调用;静态成员函数可以直接访问该类的静态成员,
不能直接访问非静态数据成员和非静态成员函数;若要,可通过对象来引用。
5、友元函数、友元类的特点和用途是什么?
友元(成员)函数特点:定义在类外部,但是需要在类体内进行说明;说明时在前面加上关键
字 friend
class A{public: ...friend (B::)double GetDistance(A start,A stop); .....};
友元(成员)函数作用:提高程序的运行效率,可以访问类中的保护和私有成员;
友元类特点:class A{...... friend class B; ......};
友元类作用:能够允许一个类中的所有成员函数都能够访问另一个类中的私有成员。
6、单一继承和多重继承的定义?
单一继承:一个类只从一个基类派生;多重继承:一个雷从多个基类派生。
简述经过公有继承和私有继承之后派生类中访问权限的变化。
公有继承之后 public protected 权限保持不变,private 变为不可访问,私有继承之后 public
protected 均变为 private,private 变为不可访问。
用派生类定义对象时构造函数的执行过程。
调用基类的构造函数,调用顺序按照他们被继承时声明的顺序(从左到右);
调用内嵌成员的构造函数,调用顺序按照他们在类中声明的顺序;
派生类的构造函数中的内容
不改变运算符原有的优先级别,也不能改变运算符需要的操作数的数目
不能创建新的运算符,只能重载 C++已有的