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