从汇编角度看虚函数和普通成员函数的调用过程

时间:2024-01-10 15:21:26
【文件属性】:

文件名称:从汇编角度看虚函数和普通成员函数的调用过程

文件大小:164KB

文件格式:PDF

更新时间:2024-01-10 15:21:26

函数 函数调用 地址

本篇文章直入正题。 我们的类成员函数分为inline、virtual、static、normal。 **normal成员函数:**其地址和一般函数的地址没有区别,就是函数代码在内存中的真实地址,但其调用要绑定到一个实实在在的对象上。取其地址需要使用“&”运算符。 **virtual成员函数:**其地址指的是其在vtable中的位置;取其地址需要使用“&”运算符。 inline成员函数:在运行时会展开,虽然语言允许取其地址,但是没有太大意义。 static成员函数:其地址和普通全局函数的地址没有任何区别;其不依赖与类的对象而存在,也不依赖与类的对象而调用,只是作用域变成了类作用域,可以像取全局函


网友评论