目次:
定義-デクリメント演算子とはどういう意味ですか?
C#のコンテキストでは、デクリメント演算子は単項演算子です。 オペランド値から1を引いた値に事前定義された値を持つ同じタイプの値を返します。 デクリメント演算子は、記号「-」で示されます。
デクリメント演算子は、プレフィックス表記とポストフィックス表記の両方をサポートしています。 プレフィックス表記(xは変数)の場合、元の値をデクリメントした後、式で変数の値が使用されます。 後置記法(x--)を使用している間、デクリメント操作の前の変数の値が式で考慮されます。 ポインタ変数に含まれるアドレスからサイズ(またはポインタ型)に等しい値を減算することにより、デクリメント演算子を使用してポインタの位置を変更できます。
Techopediaは減少演算子を説明します
通常、デクリメント演算子は、ループの反復ステートメント、または1ユニットずつデクリメントする必要があるコンテキストで使用されます。 デクリメント演算子の機能は次のとおりです。
- デクリメント演算子によって返される値は、変数を指す場所に格納されます。
- 演算子によって返される値は、減分操作の結果になります。
- 事前定義のデクリメント演算子の実装を持つ型は、整数、sbyte、short、int、long、char、float、double、decimal、列挙型などの数値型です。
- ユーザー定義型は、減少演算子をオーバーロードして、必要なセマンティクスを実装できます。
- ポインターに減分演算子を適用するとき、結果は実装に依存します。 操作がポインタードメインをオーバーフローする場合、例外はスローされません。
- デクリメント演算子の優先順位により、後置記法はプレフィックス形式よりも高い優先順位を持つことができます。
デクリメント演算子を使用する場合、オペランドは変数、プロパティアクセス、またはインデックスを表す式である必要があります。 さらに、オペランドのプレフィックス表記でデクリメント演算子を使用する場合、コンパイルエラーを回避するために、プロパティまたはインデクサーにgetおよびsetアクセサーが必要です。 さらに、デクリメント演算子がポインターに使用される場合、ポインターはvoid *以外の任意のタイプにできます。
値を設定するのではなく、変数を設定するにはデクリメント演算子を使用する必要があります。 単一の式でデクリメント演算子を複数回使用すると、主にコンパイラーによって適用される最適化により、予測できない結果が生じる可能性があります。 したがって、評価の順序を理解した後にデクリメント演算子を使用することをお勧めします。C#演算子のセットでは、後置表記と接頭表記の両方を優先順位とともに使用します。 デクリメント演算子の接尾辞および接頭辞表記には、個別の演算子実装を含めることはできません。
