C++ 教學 三元運算子
介紹
C++的三元運算子(ternary operator),又稱條件運算子,是一種簡潔的條件運算表達式,可以用來代替較長的 if-else 條件判斷。其語法如下:
condition ? value1 : value2;
其中:
condition
是要判斷的條件表達式,其值必須為布林值。value1
是條件為真時要返回的值。value2
是條件為假時要返回的值。
三元運算子的運作方式如下:
- 首先計算
condition
的值。 - 如果
condition
的值為真,則返回value1
。 - 如果
condition
的值為假,則返回value2
。
例子
例如,以下程式碼使用三元運算子來判斷一個數字是否為偶數:
int number = 10;
bool isEven = (number % 2 == 0) ? true : false;
在這個程式碼中,condition
是 number % 2 == 0
,它會檢查 number
是否為偶數。如果 number
為偶數,則 condition
的值為真,並將 true
賦值給 isEven
。如果 number
為奇數,則 condition
的值為假,並將 false
賦值給 isEven
。
限制
三元運算子可以用來簡化程式碼,使其更易讀。但是,它也有一些限制:
- 三元運算子只能用於簡單的條件判斷。
- 三元運算子的可讀性可能會受到影響,尤其是當條件表達式或返回值較複雜時。
在以下情況下,可以使用三元運算子:
- 需要在一個程式碼行中進行簡單的條件判斷。
- 需要在程式碼中嵌入條件判斷。
在以下情況下,不建議使用三元運算子:
- 需要進行複雜的條件判斷。
- 需要提高程式碼的可讀性。
以下是一些三元運算子的使用技巧:
- 使用三元運算子時,要注意條件表達式的可讀性。
- 如果條件表達式或返回值較複雜,可以使用 if-else 條件判斷來代替三元運算子。
- 可以使用括號來提高三元運算子的可讀性。