我想我们都应该熟悉算术交换算法,它交换两个变量而不使用第三个变量。现在我发现算术交换有两种变体。请考虑以下几点: 变体1。int a = 2;b = b - a;b = a - b; 我想知道,为什么算术交换有两种不同的变体,为什么它们可以工作?对于所有的变体,有没有什么优雅的数学公式可以证明为什么算术交换是这样工作的?这两个算术掉期的这两个变体之间是否有什么关联,比如
我有两个具有引用类型变量的结构实例。我想交换这两个变量,但我对如何实现这一点的第一个猜测似乎不起作用。values of m_bar of a and b a.m_bar = b.m_bar;}
据我所知,由于变量是引用类型,因此将b.m_bar分配给a.m_bar也会将其分配给temp,从而破坏了交换空间。如果是,那么交换两个引用类型<