2017-02-25 25 views
0

我需要得到一個三維矢量的剩餘價值「V [3]」如何知道另一個三維矢量的剩餘軸?

我有一個返回具有另外兩個作爲參數剩餘軸的功能:

static get_remain_axis(const short a, const short b) { 
    if (a == 0) { 
     if (b == 1) 
      return 2; 
     else 
      return 1; 
    } 
    else if (a == 1) { 
     if (b == 0) 
      return 2; 
     else 
      return 0; 
    } 
    else { 
     if (b == 0) 
      return 1; 
     else 
      return 0; 
    } 
} 

所以我可以做所以:

v[get_remain_axis(a, b)] 

但我需要在這個操作中的效率,如果可能的話,它會是很好,如果它是原子。

如何更有效地完成此功能?

回答

6

至少在我讀東西的時候,你有軸0,12。輸入是其中的兩個,你想返回第三個。

假設是這樣的話,這三個數字需要加起來3,所以你可以這樣做:return 3 - (a + b);

+0

可以'3 ^(A | B)'是任何更快嗎? – Ap31

+1

@ Ap31:我想可能(至少在理論上)是一個處理器,但至少在大多數處理器上是沒有什麼區別的。 –