Math Golang:结构上的算术运算符

Math Golang:结构上的算术运算符,math,go,structure,Math,Go,Structure,有没有办法定义结构之间的艺术运算器? 我使用十进制软件包处理固定的十进制位置,避免浮点舍入错误。Ir定义了调用mul、add、sub等函数的操作。 我想像使用浮点数一样使用这种结构:6/2,而不是decimal.newfromfloat(6.div)(newfromfloat(2)) 我希望能找到一些接口来实现它,这让我能够做这种操作,或者可能是某种getter setter来处理底层的valúes。。。有什么想法吗?没有,你不能在围棋中让操作符过载。有一个关于它的常见问题条目: 为什么Go不支

有没有办法定义结构之间的艺术运算器? 我使用十进制软件包处理固定的十进制位置,避免浮点舍入错误。Ir定义了调用mul、add、sub等函数的操作。 我想像使用浮点数一样使用这种结构:6/2,而不是decimal.newfromfloat(6.div)(newfromfloat(2))
我希望能找到一些接口来实现它,这让我能够做这种操作,或者可能是某种getter setter来处理底层的valúes。。。有什么想法吗?

没有,你不能在围棋中让操作符过载。有一个关于它的常见问题条目:

为什么Go不支持方法和运算符的重载?

如果方法分派也不需要进行类型匹配,则可以简化方法分派。使用其他语言的经验告诉我们,拥有各种名称相同但签名不同的方法有时是有用的,但在实践中也可能令人困惑和脆弱。在Go的类型系统中,仅按名称匹配并要求类型一致性是一个主要的简化决策

关于运算符重载,它似乎更方便,而不是绝对要求。同样,没有它,事情会变得更简单


如果您需要一个有效的解决方案,请查看软件包如何处理算术sans运算符重载。

不,没有,也不会有。这真是太遗憾了。。。我喜欢.NET中的十进制类型