【发布时间】:2017-11-07 03:32:15
【问题描述】:
我想为指针全局重载“->”运算符。有可能吗?
A *var1 = new A(21);
int x = var1->someInt;
在该代码中,必须在到达“var1”的“someInt”变量时触发它。
实际上,我正在尝试在到达其成员之前检查指针。另外,我正在尝试在书面代码上实现这个系统,所以我不想在实际代码中更改太多东西。
【问题讨论】:
-
This operator overload reference 应该会告诉您您需要了解的内容。从逻辑上考虑它也会回答您的问题(object member-access 运算符如何在没有对象的情况下工作?)。
-
你希望这个运算符在不带任何参数的情况下做什么?
-
如果我没记错的话,语言定义要求
operator->是一个成员函数。