交换两个对象Objective-C

时间:2014-01-05 16:26:12

标签: objective-c function generics swap

我想编写一个在Objective-C中交换两个变量的函数,它应该适用于所有类型(基元和类对象)。到目前为止我发现的是xor交换,但这只适用于整数但不适用于浮点数或类对象,我寻找一种通用的方法来编写这样的函数,但正如我从几个响应中所理解的那样,Objective-C不支持泛型编程,所以我不能像C ++中的模板或Java中的泛型类那样。有没有办法在Objective-C中实现交换相同类型的任何两个变量(基元和类对象)?

1 个答案:

答案 0 :(得分:2)

您无法交换对象,因为您的代码没有“拥有”对象。有 no 变量包含一个对象。它有一个指向对象的指针。

你可以像在纯C中那样交换这个指针。这是因为指针是纯C。