在两个对象之间交换指针

com*_*eck 0 c pointers objective-c

我有三个指针*player1,*player2*currentPlayer.

指针*currentPlayer始终指向*player1*player2.要在两者之间切换,我一直在做以下事情:

if (currentPlayer == player1) {
        currentPlayer = player2;
}
else {
    currentPlayer = player1;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,是否有更简单,更优雅的方式来交换这两个指针?

Nik*_*uhe 9

不,从概念上讲,没有更简单的方法.

从语法上讲,三元运算符更短:

currentPlayer = currentPlayer == player1 ? player2 : player1;
Run Code Online (Sandbox Code Playgroud)