C ++ this->成员变量如何实现

时间:2013-06-12 13:03:40

标签: c++

如果我在成员函数中说Hello(),我调用this-> membervariable 这是如何实现的?这是获取this指针的地址然后以某种方式偏移到membervariable然后取消引用?渴望深入了解这一机制。

布莱尔

2 个答案:

答案 0 :(得分:12)

this是指向成员函数所属类的当前实例的指针。它隐式传递给你调用的每个成员函数(静态函数除外)。

this->memberVariable就像任何其他指针取消引用一样,只是(*this).memberVariable的快捷方式。

答案 1 :(得分:1)

对于每个成员函数'this'是一个隐式传递的参数...因为成员函数是共享的,这是区分调用函数的对象的方法...记住非虚函数在编译时被链接< / p>