众所周知,虚拟地址空间划分成了好几个部分,有堆区、栈区、常量区、静态区......
(500条消息) C/C++代码内存分布图_程序分布图_橙予清的zzz~的博客-优快云博客https://blog.youkuaiyun.com/weixin_69283129/article/details/126122989大家可以看这篇文章深入了解我们日常所写的C++代码都分布到了内存的哪些地方。
我们可以模拟创建指向堆区空间、指向栈区空间的地址、创建存在于静态区和常量区的变量或常量,通过获取它们的地址就可以判断出虚表地址的大致位置到底处在内存的那一部分了。
试验案例:
class A {
virtual void Func1() {
cout << "A:Func1()" << endl;
}
virtual void Func2() {
cout << "A:Func2()" << endl;
}
};
class B :public