HOWTO · C++

C++ の単項否定演算子

単項マイナス演算子は、数値を否定するために使用され、変数の前に使用すると、その値を否定します。

このページの内容

単項マイナス演算子は、数値を否定するために使用され、変数の前に使用すると、その値を否定します。

単項マイナス演算子は、C++ のプレフィックス - 記号を表します。 数字を否定するには、数字の前に - 記号を付ける必要があります。 たとえば、5 を否定したい場合は -5 を入力し、4 を否定したい場合は -4 を入力します。

変数の前に単項マイナス演算子を使用して、それらの値を否定することもできます。 たとえば、2 の変数 x があり、その前に -x を置くと、その値は -2 になり、10 の y があり、その前に -y を置くと、その値は次のようになります。 -10 にもなります。

C++ で単項マイナス演算子をオーバーロードする手順

C++ で単項マイナス演算子をオーバーロードするには、次の手順が必要です。

  • basic_operand クラスから継承されたオペランド クラスを作成し、unary_operator 関数をオーバーライドします。
  • オペランド クラスに unary_operator 関数を実装して、このオペランドを含むすべての演算に対して負の値を返します。
  • 式オブジェクトを作成するときに引数の 1つとしてオペランド クラスを含めることにより、オペランド クラスをプログラムに含めます。

例:

#include <iostream>
using namespace std;
int main() {
  int x = 3;
  int y = -x;
  cout << "unary postive integer " << x << endl;
  cout << "unary minus operator: " << y << endl;
  return 0;
}

ここをクリック 上記のコードの動作を確認します。