-
普通函数不能是虚函数查看全部
-
抛出的子类错误可以通过父类进行捕获查看全部
-
try与catch一对多查看全部
-
在try中如果fun1出现异常,则其后代码不会被运行 catch捕获的函数类型与throw一致查看全部
-
函数调用与异常处理方向相反查看全部
-
cout<< (unsigned int)(*q)<<endl;//????查看全部
-
强制转换: Shape shape; int *p=(int *)&shape;查看全部
-
使用dynamic_cast注意:查看全部
-
仅含有纯虚函数的类称为接口类查看全部
-
纯虚函数的定义方法: virtual 函数返回类型 函数名 = 0; 纯虚函数作为抽象的动作,是无法被实现的,包含它的类,也无法被实例化,这里解释何为抽象? 首先,视频中有提到,还不太清楚的可以抓住抽象两个字再去看看。 这里再举个例子加深对抽象的概念 图形作为基类,图形类有计算面积、周长等函数, 但是当创建一个具体的对象的时候,图形类仅仅是一个抽象化的概念,而不是一个具体的对象(事物),它是一个圆?还是一个矩形?我们无从得知,因此它的动作,计算面积、周长等等等是无法被实现的。 也就是说,图形类只是一个抽象的信息,无法得知它是什么形状,有多大等等。 因此包含抽象动作的类会自动被定义为抽象类。 抽象类的存在意义:在包含纯虚函数的类被称为抽象类,是无法实例化对象的,它仅仅是一个抽象的存在,作为派生子类的接口,抽象类中所包含的是所有派生类中共有的特性,例如:椭圆、正方形、三角形,它们都有面积、周长。是为具体化某类事物而存在,这就是抽象类的存在意义。查看全部
-
typeid()里面放对象名,dynamic_cast()里面放指针或引用查看全部
-
函数在被声明为虚函数之后,函数变为虚函数,虚函数将虚函数指针中所指向的虚函数表读取,虚函数表所包含的是函数指针;当父类的指针指向子类的对象时,由于所有继承父类的子类也得到各自的虚函数表,因此,当父类指针指向子类对象时,虚函数指针的所指向的地址值首先会被子类的虚函数指针所覆盖,指向子类的虚函数表。查看全部
-
仅有纯虚函数的类叫做接口类 接口类定义示例查看全部
-
对象无数据成员以及虚函数和虚析构函数时,占用一个基本内存单元以记录存在 虚函数表指针占用四个内存单元(4bit)——所有类型的指针都占用4字节 虚函数表指针占用对象的最前面四个基本内存单元查看全部
-
try与catch是一对多的关系,(...)表示其它情况。查看全部
举报
0/150
提交
取消