CSDN论坛 > C/C++ > C++ 语言

一个小小的虚函数问题 [问题点数:10分,结帖人googlex]

Bbs1
本版专家分:0
结帖率 96%
CSDN今日推荐
Bbs2
本版专家分:232
Bbs3
本版专家分:980
Bbs2
本版专家分:196
Bbs3
本版专家分:656
Bbs5
本版专家分:2536
Bbs7
本版专家分:12499
版主
Blank
榜眼 2009年 总版技术专家分年内排行榜第二
2005年 总版技术专家分年内排行榜第二
Blank
银牌 2009年7月 总版技术专家分月排行榜第二
2009年3月 总版技术专家分月排行榜第二
2009年1月 总版技术专家分月排行榜第二
2005年7月 总版技术专家分月排行榜第二
2005年5月 总版技术专家分月排行榜第二
2005年3月 总版技术专家分月排行榜第二
Blank
优秀版主 优秀小版主
2015年8月优秀小版主
2015年9月优秀小版主
2015年5月优秀小版主
2015年2月论坛优秀版主
Blank
铜牌 2009年6月 总版技术专家分月排行榜第三
2009年2月 总版技术专家分月排行榜第三
2005年4月 总版技术专家分月排行榜第三
2005年1月 总版技术专家分月排行榜第三
匿名用户不能发表回复!
其他相关推荐
虚继承和虚函数的相关问题浅析
今天主要要理解的是如下代码在内存中是如何储存/运行的:class A { public: virtual void fun1() { cout << "A::fun1" << endl; } int _a; };class B :virtual public A { public: virtual void fun1() {
带有虚函数的菱形继承和带有虚函数的菱形虚继承
对于某些函数来说,基类希望它的派生类定义适合自身的版本,此时基类就将这些函数声明为虚函数。 在存在虚函的类,创建对象时会产生虚表指针,虚表指针指向一个虚表,这时就可以通过虚表访问自己定义的函数。 通过下面两种继承进行分析: 【带有虚函数的菱形继承】 以下图的模型为例进行分析: class A { public : A() :a(1) {}
继承中虚函数的缺省参数值问题
如果类继承中重新定义了虚函数,那么虚函数中的缺省参数不要重新定义。 用一句话来解释原因就是:虚函数是动态绑定的(dynamically bound),但是缺省参数却是静态绑定的(statically bound)。 静态类型和动态类型 首先需要了解什么是对象的静态类型和动态类型,对象的所谓静态类型(static type),就是它在程序中被声明时所采用的类型。 以下面的类为例: clas
C++中虚函数的用法详细讲解
我们知道,在同一类中是不能定义两个名字相同、参数个数和类型都相同的函数的,否则就是“重复定义”。但是在类的继承层次结构中,在不同的层次中可以出现名字相同、参数个数和类型都相同而功能不同的函数。例如在例12.1(具体代码请查看:C++多态性的一个典型例子)程序中,在Circle类中定义了 area函数,在Circle类的派生类Cylinder中也定义了一个area函数。这两个函数不仅名字相同,而
一个简单的关于Java组件的小练习
第一个实现的Java组件小代码,棒棒哒
C++中当对象指针为空时,虚函数和非虚函数的调用情况
当我们定义一个类的对象为空时,这时我们调用该对象中的函数,我们会发现当调用非虚函数时仍可以正常调用,而如果要调用虚函数则会报错。如下示例: class Progress { public: void print(int L) { cout << "L = " << L << endl; } }; int main() { Progress *a = NULL; a->prin
虚函数调用过程
1.(mov ecx,dword ptr [ebp-0Ch])将this指针压入ecx 2.(mov edx,dword ptr [ecx])this指针指向该对象的首地址,而该处的前四个字节存放着该对象的虚函数表的首地址,将虚表指针放到edx中。 3.(call dword ptr [edx+4])由于edx中存放着虚表指针,则edx+4表示调用该虚表中的第二个函数 4.执
独一无二的路
从前有一只小小的机器人叫小器,小器站在一个M*N的格子地板的最左上角,很孤单,世界辣么大,它也想去看看,经过不懈的努力它终于可以(只能)向下或者向右移动啦,它有一个宏伟的愿望就是要穿过格子地板到达右下角的砖,所以如果小器告诉你M和N,你能不能帮它计算一下这中间可以有多少条独一无二的路径? 注意:这是一道OJ题目,请用两个input(“”)分别获得M和N的值。 测试用例: 输入: 3
一个小小的简历模板
一个小小的简历模板
浅议 Dynamic_cast 和 RTTI与虚函数表的关系
浅议 Dynamic_cast 和 RTTI 写这篇博文的目的是,记录学习过程。 对于问题要较真,在解决这个问题中会学到很多,远远超过自己期望,锻炼思维,享受这个过程。 问题: Static_cast 与 Dynamic_cast的区别 来自书本上的解释:   用 static_cast ( expression )   1. static_cast(expression) The
关闭
关闭