虚函数背后的秘密2
2012-07-19 19:05
274 查看
#include <iostream>
using namespace std;
class Base
{
public:
Base()
{
cout << "In Base" << endl;
cout << "This Pointer = " << (int*) this << endl;
cout << endl;
}
virtual void f()
{
cout << "Base::f" << endl;
}
};
class Drive: public Base
{
public:
Drive()
{
cout << "In Drive" << endl;
cout << "This Pointer = " << (int*) this << endl;
cout << endl;
}
virtual void f()
{
cout << "Drive::f" << endl;
}
};
int main()
{
Drive d;
cout << "In Main" << endl;
cout << "In Main = " << (int*) &d << endl;
return 0;
}
In Base
This Pointer = 0xbfffe47c
In Drive
This Pointer = 0xbfffe47c
In Main
In Main = 0xbfffe47c
using namespace std;
class Base
{
public:
Base()
{
cout << "In Base" << endl;
cout << "This Pointer = " << (int*) this << endl;
cout << endl;
}
virtual void f()
{
cout << "Base::f" << endl;
}
};
class Drive: public Base
{
public:
Drive()
{
cout << "In Drive" << endl;
cout << "This Pointer = " << (int*) this << endl;
cout << endl;
}
virtual void f()
{
cout << "Drive::f" << endl;
}
};
int main()
{
Drive d;
cout << "In Main" << endl;
cout << "In Main = " << (int*) &d << endl;
return 0;
}
In Base
This Pointer = 0xbfffe47c
In Drive
This Pointer = 0xbfffe47c
In Main
In Main = 0xbfffe47c
相关文章推荐
- 虚函数背后的秘密
- ATL布幔下的秘密之虚函数背后的东西
- ATL布幔下的秘密之虚函数背后的东西
- ATL布幔下的秘密之虚函数背后的东西
- 虚函数背后的秘密
- 为什么 LR 模型要使用 sigmoid 函数,背后的数学原理是什么?
- C语言的那些小秘密之【变参函数的实现】
- C语言的那些秘密之---函数返回局部变量
- 云计算背后的秘密(1)-MapReduce
- 微信技术总监周颢:一亿用户背后的架构秘密
- SpringBootApplication背后的秘密
- 说说Android桌面(Launcher应用)背后的故事(三)——CellLayout的秘密
- 微信一亿用户背后架构秘密
- Postfix邮箱服务器高性能背后的秘密。
- 小米“40亿”背后的秘密:互斗与双赢
- C++中new和delete的背后( call edx 调用虚表内的第二个函数(析构函数))
- 分享一下@Override标签背后的小秘密---记录java的思行合一
- 巨头钟爱20%股权?收购背后的微妙秘密
- 揭秘中共“人海战术”背后的秘密
- 360特供机AK47“高配低价”背后的秘密:以牺牲用户体验为代价