从 C++ 中同一类的另一个成员函数调用成员函数,目标 C

发布于 2024-10-16 15:46:41 字数 294 浏览 7 评论 0原文

考虑以下问题:

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”的使用。 应该在对象上调用函数吗?

Consider the following:

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

How do you call member functions from within another? And how does static functions affect the use of 'this'.
Should functions be called on an object?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

流年里的时光 2024-10-23 15:46:41

纳瓦兹是正确的:“这个”是隐含的。一个例外是 foo 是静态函数,因为在静态函数中没有“this”。在这种情况下,你不能使用 bar() ,除非 bar() 也是一个静态函数,并且你根本不能使用 this->bar() 。

Nawaz is correct: 'this' is implicit. The one exception is if foo were a static function, because in static functions there is no 'this'. In that case, you can't use bar() unless bar() is also a static function, and you can't use this->bar() at all.

软甜啾 2024-10-23 15:46:41
bar();//is this possible? or should you say this->bar()

this 是隐式的。所以两者是等价的。您可以使用其中任何一个。但后来我想,如果只是 bar() 就足够了,那为什么还要使用 this->bar() 呢?

仅当存在一些歧义时才使用 this,否则使用更简单的!

bar();//is this possible? or should you say this->bar()

this is implicit. So both of them are equivalent. You can use any of them. But then I think, if just bar() is enough, then why use this->bar()?

Use this only when there is some ambiguity, otherwise use the simpler one!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文