-
-
[原创]一图看懂C++虚函数的动态绑定
-
发表于: 2021-12-31 16:34 26887
-
当基类对象的虚表有多个对象的成员函数的时候,只需要查看具体虚函数反汇编call的eax值就可以判断出虚基类的真实对象身份。
class
Person
{
public:
Person() : age(
30
)
{
}
virtual void
print
()
{
printf(
"The person‘s age = %d\n"
, age);
}
protected:
int
age;
};
class
Teacher : public Person
{
public:
virtual void
print
()
{
printf(
"The teacher's age = %d\n"
, age);
}
};
class
Student : public Person
{
public:
virtual void
print
()
{
printf(
"The student age = %d\n"
, age);
}
};
Person
*
createRole()
{
new Teacher;
return
new Student;
}
class
Person
{
public:
Person() : age(
30
)
{
}
virtual void
print
()
{
printf(
"The person‘s age = %d\n"
, age);
}
protected:
int
age;
};
class
Teacher : public Person
{
public:
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 2021-12-31 16:39
被_THINCT编辑
,原因:
赞赏记录
参与人
雪币
留言
时间
心游尘世外
感谢你的贡献,论坛因你而更加精彩!
2024-11-30 06:34
伟叔叔
为你点赞~
2023-3-18 04:41
一笑人间万事
为你点赞~
2022-7-30 05:56
赞赏
他的文章
- 重新认识线程sleep 1141
- [原创]CPU爆高,程序卡顿分析 2603
- [原创]再战堆栈损坏:Critical error detected c0000374 1529
- [原创]在无用的堆栈中分析DLL版本错误 1396
- [原创]小白也能通过特征码定位源码 2936
看原图
赞赏
雪币:
留言: