8

次の点を考慮してください。

class A{

    //data members

    void foo()
    {
        bar();//is this possible? or should you say this->bar() note that bar is not static
    }
    void bar()
    {

    }
}//end of class A

メンバー関数を別の関数から呼び出すにはどうすればよいですか? また、静的関数は「this」の使用にどのように影響しますか。オブジェクトで関数を呼び出す必要がありますか?

4

2 に答える 2

7

Nawaz は正しいです。'this' は暗黙的です。1 つの例外は、foo が静的関数の場合です。静的関数には「this」がないためです。その場合、bar() も静的関数でない限り、bar() を使用することはできません。また、this->bar() をまったく使用することもできません。

于 2011-02-08T07:55:32.170 に答える
4
bar();//is this possible? or should you say this->bar()

this暗黙的です。したがって、どちらも同等です。どれでも使用できます。しかし、それで十分ならbar()、なぜ使用するのthis->bar()ですか?

thisあいまいさがある場合にのみ使用し、そうでない場合は、より単純なものを使用してください。

于 2011-02-08T06:44:26.007 に答える