c++中,class有变量a成员函数return this->a和return a是不是一个意思?

如题所述

不一定,例如成员函数这样写:
int a= 0; return a;
比较一下:
int a = 0; return this->a;追问

假设我写成
class a
{
int _a;
int b()
{
return this->_a;
//这两个呢?
return _a;
}

追答

this->_a和_a是同一个变量

追问

this->_a应该是指的a._a吧

追答

在成员函数的语境下,并不知道class a的对象名叫什么。
说a._a是不对的,a是一个class名,不是一个对象名
_a是一个随着对象不同而可以有不同值的变量,所以只能是对象名._a,不能是类名._a

追问

哦,也就是说
a d;
d.b;
么?

d._a

追答

是这个意思

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答