開発 Cの条件演算子とは何ですか? -techopediaからの定義

Cの条件演算子とは何ですか? -techopediaからの定義

目次:

Anonim

定義-条件演算子とはどういう意味ですか?

C#の条件演算子は、3つのオペランド(チェックする条件)、条件が真の場合の値、および条件が偽の場合の値を取る演算子です。


条件演算子は、記号「?:」で表されます。 最初のオペランド(「?:」の前に指定)は、評価(条件)式です。 評価された式のタイプを暗黙的に 'bool'に変換できるようにするか、コンパイルエラーを回避するために演算子trueを実装する必要があります。 2番目と3番目のオペランドは、条件式のタイプを制御します。 割り当てで使用されることが多く、コンパイルエラーを生成するステートメントとしてではありません。


第1オペランド(条件式)の戻り値がtrueの場合、第2オペランドが評価されます。 それ以外の場合、3番目のオペランドが評価されます。 したがって、条件演算子の結果は、評価のために考慮される式の評価の結果です。


x?a:bとして記述された式では、オペランドx(条件式)のみがtrueを返す場合、オペランドaが評価されます。 それ以外の場合、オペランドbが評価されます。


この用語は、三項演算子またはインラインif(iif)とも呼ばれます。

Techopediaは条件演算子を説明します

C#の条件演算子は、3つの演算子(3つのオペランドを取る)のみです。 if-elseコンストラクトの代替として形成されます。これにより、より少ないコードでより簡潔になり、読みやすくなります。 コンパイル中に、C#コンパイラは3項式を分岐ステートメントに変換します。これにより、複数のifステートメントを圧縮し、ソースコードのレベルでネストを減らすことができます。 時々、三項演算子用に生成されたコードは、いくつかの命令を並べ替えることでパフォーマンスを向上させることができます。


条件演算子のプロパティは次のとおりです。

  • これは右結合であり、操作は右から左にグループ化されることを意味します。
  • 条件演算子記号の後に指定された2つの式のいずれかを常に評価します。 両方を評価することはありません。
  • 最初のオペランドは、整数型またはポインター型である必要があります。
  • 2番目と3番目のオペランドは、相互に変換可能でなければならず、他の型に相互に変換可能ではありません。
  • 結果のタイプは共通タイプであり、l値です。ただし、2番目と3番目のオペランドが同じタイプで、両方ともl値である場合のみです。
  • ステートメントとして使用できるのは、割り当て呼び出し、増分、減分、および新しいオブジェクト式のみです。
  • 三項演算子を使用した式の評価の結果がメソッドのreturnステートメントで使用される場合、その型は、コンパイルを成功させるために、囲むメソッドの戻り値の型と一致する必要があります。
  • 結果が定数でない場合、条件式のタイプは、2つのタイプのうちより一般的なタイプに基づきます。
この定義はC#のコンテキストで記述されました
Cの条件演算子とは何ですか? -techopediaからの定義