gpt4 book ai didi

overloading - 如何在 Julia 中重载 +=?

转载 作者:行者123 更新时间:2023-12-04 02:31:07 26 4
gpt4 key购买 nike

我试图了解运算符重载在 Julia 中是如何工作的。该手册非常简短,并给出了 +()作为示例函数,然后声明所有运算符都可以使用其明显的名称重载(还提供了非明显名称的列表)。

但是+=?呢?函数+=()甚至似乎不存在,也不存在 +=!() (因为它是一个修改功能)。我经常通过定义 += 来重载 C++ 中的运算符先用一个简单的+基于副本和+= .

就我而言,我什至认为我不需要 + , 只是 += 的行为...我意识到我可以编写自己的修改函数,但运算符语法会很好。 (出于好奇, *=/=$= 等如何工作?)

最佳答案

没有+=功能。它只是 a = a + b 的语法糖.

它也不会变异。所以a += b计算 a + b然后更改 a引用结果。这意味着 a + b 的结果有内存分配.

关于overloading - 如何在 Julia 中重载 +=?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27901832/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com