我一直想知道这个问题,但为什么 Delphi 中的类不能使用运算符重载?
我记得在逃跑时读过一次答案,它说它会与某些东西发生冲突,但我记不太清了。据我所知,只有隐式运算符可能会导致一些问题,因为类存储在堆上,并且分配实际上是堆地址的副本(基本上是复制指针)。
最佳答案
关闭。这是因为对象是引用类型并且内存是手动管理的。所以如果你说myResult := myObject1 + myObject2 + myObject3;
,您必须在其中的某个位置创建一个中间对象,并且没有代码来释放它,因此您会出现内存泄漏。
关于delphi - 为什么 Delphi 中的类不能使用运算符重载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2090472/