高手过来看看:this, vptr, vtable!
1):this 是一个对象的地址吗?
2):如何得到一个对象的vptr,并将它赋给另一个指针。
下面能实现吗?如果是,为什么能?
class base{
public:
virtual ~base(){}
};
void *pObj = new char[10];
*(DWORD_PTR*)pObj = *( DWORD_PTR*)&base();
3):如何得到一个类的vtable,并将它赋给另一个指针.
谢谢!
2):如何得到一个对象的vptr,并将它赋给另一个指针。
下面能实现吗?如果是,为什么能?
class base{
public:
virtual ~base(){}
};
void *pObj = new char[10];
*(DWORD_PTR*)pObj = *( DWORD_PTR*)&base();
3):如何得到一个类的vtable,并将它赋给另一个指针.
谢谢!
...全文
相关推荐
浅谈C++中虚函数实现原理揭秘
下面小编就为大家带来一篇浅谈C++中虚函数实现原理揭秘。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
从汇编看c++中的多态详解
下面小编就为大家带来一篇从汇编看c++中的多态详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
C++虚函数多态的工作原理
讲得非常清楚,值得学习,当年我怎么看怎么不懂,现在看了这个我就懂了
虚函数的原理,如果能够了解C++编译器对于虚函数的实现方式,我们就能够知道为什么虚函数可以做到动态绑定
你一定很想知道虚函数是怎样做出来的,对不对?如果能够了解C++编译器对于虚函数的实现方式,我们就能够知道为什么虚函数可以做到动态绑定。本文就精要的阐述了虚函数的精髓,相信会给你一种恍然大悟,焕然一新的感觉。
C++学习笔记(13)——利用对象、引用、指针调用虚函数.docx
.


