其他分享
首页 > 其他分享> > c – 如何创建和使用类箭头运算符?

c – 如何创建和使用类箭头运算符?

作者:互联网

因此,在研究了它到处之后,我似乎无法找到如何创建类箭头运算符,即

class Someclass
{
  operator-> ()  /* ? */
  {
  }
};

我只需要知道如何使用它并适当地使用它.
– 它的投入是什么?
– 它返回什么?
– 我如何正确声明/原型化?

解决方法:

操作符 – >用于超载成员访问权限.一个小例子:

#include <iostream>
struct A 
{
    void foo() {std::cout << "Hi" << std::endl;}
};

struct B 
{
    A a;
    A* operator->() {
        return &a;
    }
};

int main() {
    B b;
    b->foo();
}

这输出:

Hi

标签:c,class,operator-keyword
来源: https://codeday.me/bug/20190930/1835107.html