我想知道是否有理由在属性类中使用this
?
class Foo
{
private:
int m_foo;
public:
int getIntance() { return this->m_foo; }
}
除了说这是现在的班级之外,还有其他原因吗?
答案 0 :(得分:1)
不,不要使用它。在这种特殊情况下,它不需要,这样输入的次数较少:
int getIntance() { return m_foo; }
你写的越少越好。即使对于阅读代码的人来说(他们阅读的内容也很少)
答案 1 :(得分:1)
this
输入较少。在这种特殊情况下,它不是强制性的。除非您想将对象的当前实例传递给函数,否则没有理由使用this
关键字。
您可以简单地写一下:
int getIntance() { return m_foo; }
调用方法getInstance
来返回int
是很奇怪的。这是非常罕见的......
答案 2 :(得分:0)
没有理由使用this
,例如,除非您希望课外的某些内容指向您的实例(假设您将实例添加到this
),指针)。
在您的示例中,this
是多余的,因为m_foo
可以轻松地return m_foo;
毫无问题地返回。{/ p>
但是,this
只能用于非静态成员函数,否则无法编译。