88问答网
所有问题
当前搜索:
虚函数到底有什么用
为
什么
要用
虚函数
答:
1、基于向上类型转换,基类通过虚函数可以对多个子类相似的功能实现统一管理
。2、例子:A为基类,B、C为A的同级子类。virtual只需在基类中标识一次,子类无需重复标识。class A{virtual void display(){cout<<"我是A"<<endl;}}class B:public A{void display(){cout<<"我是B"<<endl;}}class C:public A{vo...
函数覆盖 与
虚函数
什么
区别??
答:
简单的说,
虚函数
可以在程序运行的时候实现多态(调用虚函数时通过调用虚表来确定最终调用哪个实际函数)可以说是“动态”的多态;而函数重载(即你说的函数覆盖)是在源代码编译的时候,编译器就可以明确调用哪个函数的,实际上是属于“静态”的多态。
虚函数
纯虚函数是一个东西吗?
答:
虚函数
是指一个类中你希望重载的成员函数,当你用一个基类指针或引用指向一个继承类对象的时候,你调用一个虚函数,实际调用的是继承类的版本。 ——摘自MSDN 这个定义说得不是很明白。MSDN中还给出了一个例子,但是它的例子也并不能很好的说明问题。我们自己编写这样一个例子:#i nclude "stdio.h"#i nclude "co...
在c++中
虚函数
和多态性是
什么
意思
答:
ff->vir();//子类起作用,
虚函数
多态的
用处
,显示 son vir === 程序在运行时决定调用虚函数的哪个定义,这个决定依赖于基类型指针所指向的对象的类型。通过点运算调用虚函数时,忽略了虚函数的多态性,**只有**使用***基类型指针访问虚函数***,运行时的多态性才得以体现。即C++根据指针指向对象...
C++中的
虚函数
和JAVA中的抽象方法
有什么
区别?
答:
因为虚函数可以实现动态绑定
,也就是到底调用哪个函数是根据指针当前指向哪个对象来确定的,不是根据指针的类型来确定。如果C++中不把析构函数声明为虚函数,那么其有个子类,重写了虚函数,那么当父类指针指向一个子类对象时,当调用析构函数时,只调用父类的析构函数,而无法调用子类的析构函数,所以...
为什么C++中,
虚函数
也能算为多态性的一种?
到底什么
多态性的是什么?
答:
using namespace std;class Base{public: virtual void vf() //只有
虚函数
、纯虚函数才有多态性 { cout << "调用了基类函数 vf() 。" << endl; }};class A : public Base{public: void vf() { cout << "调用了子类 A 函数 vf() 。" << endl; }};class B : public Base{...
C++使用
虚函数
的时候,子类也要使用virtual关键字吗
答:
不用的,随你加不加,有virtual是可以被子类重写的。 youngking87 | 发布于2013-03-13 举报| 评论 1 0 不用 当然为了方便观看 还是写上比较好 暴君坎普 | 发布于2013-03-13 举报| 评论 3 0 其他1条回答 为您推荐:
什么
叫虚函数 excel函数公式大全 抽象类和虚函数 虚函数的作用
虚函数
...
C++
虚函数到底
需要实现吗
答:
是这样的,抽象类中的纯
虚函数
是一定不能实现的,普通的虚函数看继承的具体情况
C++中多态的作用?
答:
一旦VPTR被初始化为指向相应的VTABLE,对象就"知道"它自己是
什么
类型。但只有当
虚函数
被调用时这种自我认知才
有用
。VPTR常常位于对象的开头,编译器能很容易地取到VPTR的值,从而确定VTABLE的位置。VPTR总指向VTABLE的开始地址,所有基类和它的子类的虚函数地址(子类自己定义的虚函数除外)在VTABLE中存储的位置总是相同的,...
virtual int fuc(int,int)=0;这样定义的
函数什么
意思?帮帮忙
答:
也就是根据它是由A类定义的,这样就调用这个类的函数.f2()是
虚函数
.调用m_j->f2();会调用m_j中
到底
保存的对象中,对应的这个函数.这是由于new的B 对象.f3()与f2()一样,只是在基类中不需要写函数现实.这种你google下会有很多,肯定比这儿的人答得要详细 ...
1
2
3
4
5
涓嬩竴椤
其他人还搜
虚函数有什么用
为什么要用虚函数
虚函数在什么情况下使用
虚函数与纯虚函数
虚函数有啥用
虚函数怎么用
构造函数虚函数
虚函数是什么
析构函数不是虚函数