我必须定义自己的类myDouble
,因为我想覆盖默认除法运算。我希望除以零给我0并且不会使程序崩溃(我的客户要求)。
现在我想支持double d = myObj
,其中myObj
的类型为myDouble
。因此我在班上创建了double operator()。因为我还需要创建自己的除法运算。所以我创建了friend operator / (myDouble a, myDouble b ).
现在编译器抱怨说它在解析中发现冲突,将操作符分为调用,我自己或系统调用。
此问题解决方案的正确策略是什么?