重载成员选择运算符

overload member selection operator

本文关键字:运算符 选择 成员 重载      更新时间:2023-10-16

是否有任何方法可以重载"点"-运算符"。">

我们希望在重写ORM层时使用旧的代码库。因此,我们有了包装对象并为成员选择运算符添加一些新语义的想法

我们发现有几个网站在讨论这个问题,包括这里的SO,都说理论上可以,但目前的C++标准不允许

也许已经有一个编译器可以做到这一点了?

编辑

感谢你的快速回答;我们看到,如果不是不可能的话,找到这样一个编译器可能很难。如有任何进一步的提示,我们将不胜感激。我们已经阅读了您发布的所有资源。。。

简单地说,我们想要实现的是:包装器没有任何自己的成员,它只应该以另一种方式提供前一个真实对象。由于向后兼容性的原因,实现我们的新层将非常方便——我们可以避免在超过4000次的情况下修改遗留客户端代码。

如果你有任何其他想法如何以另一种方式进行,请告诉。这个限制在C++11中还会存在吗?

编辑2

还不确定,我将报告我们的工作。

您不能重载点运算符,而且没有支持此属性的c++编译器。请查看维基百科中的此链接,该链接更详细地解释了C++中的运算符重载。http://en.wikipedia.org/wiki/C%2B%2B_operators