C中的电力运营商计划

我正在创建一个库,它的概念类似于python。 C没有像python那样的幂运算符( ** )(例如pow(x,n)等价于python中的x**n )。

我尝试使用预处理器指令解决此问题。 但没有发现任何伎俩。

由于^此运算符用于XOR运算,所以我认为它不能用于幂运算符(我们可以吗?)

所以替代解决方案是双星( ** ),因为**是编译器无法识别的运算符,所以我们如何让编译器知道它。

为此建议方法或解决方案。

你不能将新的运算符添加到C ++中,所以使用** (或其他一些新的东西)就不行了。 此外,当双方都是内置类型时,您不能重载运算符,因此使用现有运算符(例如^ )来实现浮点数/整数浮点数/整数也是浮点数/整数。 请参阅Stroustrup的C ++ FAQ中的这个问题 (如下面的评论中所述)。

你可以实现自己的数字类并重载你想要的任何操作符,但这并不容易,它不会像你想象的那样“优雅”或酷。

所以,只需使用一个function。