经过C++等级考试,对C++有所了解,故有以下总结,主要讲述的是思维导图中的几点:
类和对象
特殊类:由于特殊需求而C++产生的类
1、友元类
一个房子,客厅比喻公用部分,用卧室比喻私有部分。客厅对所有来客开放,而卧室除了本家庭的成员可以进入以外,还允许好朋友进入。好朋友就是友元。
友元:可以访问与其有好友关系的类中的私有成员。
B类是A类的友元类,友元类B中的所有函数都是A类的友元函数,可以访问A类中的所有成员。
友元函数
a、将函数(成员函数和非成员函数)声明为友元函数
b、一个函数可以被多个类声明为“朋友”,这样就可以引用多个类的私有成员。
b、抽象类可以包含抽象方法和访问器
c、不能把抽象类用密封(sealed)来修饰,那就意味着类不能被继承,这违反抽象类被继承的原则。
d、一个派生于一个抽象类的非抽象类必须包括所有的继承来的抽象方法和访问器的实现
e、在方法和属性中使用abstract 关键字意味着包含它们的实现。
一个抽象类可以包含抽象和非抽象方法,当一个类继承于抽象类,那么这个派生类必须实现所有的基类抽象方法
抽象方法
当类中的方法在声明的时候加上 abstract 关键字的时候,他就被我们称为抽象方法,但是有个很重要的提醒,只 有在抽象类和接口中才可以使用抽象方法.
抽象方法有以下特征:
a、一个抽象方法可以看作是一个虚函数。
b、抽象方法的声明只能在抽象类中。
c、因为抽象方法声明只提供一个无实现的方式,没有方法体
d、方法体的实现被覆写方法提供,覆写方法是一个非抽象类的成员。
e、抽象属性的行为和抽象方法相像,除了不同的声明形式。
f、在一个静态属性中使用abstract 是一个错误。
*一个抽象属性能够通过派生类使用 override 实现.
未完待续。。。。。