c ++:是否可以在派生类中定义重载运算符,它将使用objs基类类型

时间:2012-04-26 21:11:26

标签: c++ inheritance operator-overloading

是否可以在驱动类中定义重载运算符,这些运算符将从基类类型中运行objs?

例如:假设我有一个Point类,我想在一个名为Operators的类中进行所有运算符重载,这个类将继承Point类

有可能吗?如果没有,还有其他办法吗?

2 个答案:

答案 0 :(得分:2)

不,这是不可能的。此外,你的方法是错误的。继承是is-a关系,Operators显然不是Point。你真的需要重新考虑你的设计。

答案 1 :(得分:1)

派生类的重点是使派生类更具体。我不确定你是否想要一个名为Operators的类,它来自Point。

您可能只想在类+之外为operator +创建一个定义,或者将Point对象作为参数进行定义。