我用C++编程多年,但我仍然对一件事有疑问。在其他人的许多地方,我看到的代码如下:
void Classx::memberfunction()
{
this->doSomething();
}
如果我需要导入/使用该代码,则只需删除 this-> 部分,而且我从未见过任何损坏或有副作用的东西。
void Classx::memberfunction()
{
doSomething();
}
那么,您知道使用这种构造的任何理由吗?
编辑:请注意,我在这里谈论的是成员函数,而不是变量。我了解可以在需要区分成员变量和函数参数时使用它。
编辑:明显重复:
Are there any reasons not to use "this" ("Self", "Me", ...)?
最佳答案
为保证您触发了编译器错误,如果有一个宏可能定义为与成员函数同名的宏,并且不确定是否确实未定义该宏。
别开 Jest 了,我敢肯定,正是出于这个原因,我必须做到这一点!