在阅读有关虚函数的教程时(与本例不相关)此链接上,我发现了这段代码。
class Weapon
{
public:
void features()
{ cout << "Loading weapon features.\n"; }
};
class Bomb : public Weapon
{
public:
void features()
{
this->Weapon::features();
cout << "Loading bomb features.\n";
}
};
类 Weapon 派生自类 Bomb,Weapon 的成员函数被调用。
为什么要使用 "this" 指针调用函数 Weapon::features() 呢?这不是已经隐式给出了吗?
this->
来访问成员,而有些则不会。 - Some programmer dudethis->
。但在这里它是无用的。 - HolyBlackCatWeapon::features()
看起来太像调用静态方法了,这是在使用前置this->
的一个很好的理由。不过,这只是一种风格上的问题。 - 463035818_is_not_a_number__super
这样的扩展关键字很不错,但不太可能被采用 :) - Hans Passant