Home News DOC Class DL Others Cooker
Documents  >  Tutorial  >  優先度 2
優先度 2 の演算子

優先度 2 の以下の演算子について説明します。


.x.yドット演算子
++x++後置++演算子
--x--後置--演算子

オペランドの後に置く単項演算子です。


目次:


ドット演算子

後置++演算子

後置--演算子

ドット演算子

ドット演算子はオペランドのメンバを呼び出すための演算です。

演算子の左側の式の返すインスタンスに右側の式で指定したメンバを呼び出すように指示します。


int i = new int(10); // 10

string str = i.ToString(); // "10"


上記の例では int クラスの変数 i に ToString() メソッドの呼び出しを指示しています。

後置++演算子

後置++演算子はオペランドと同じ値を持つ新しいインスタンスを返した後にオペランドの値を 1 加算します。

オペランドは int、long、real クラスのどれかでなければなりません。これ以外のクラスに後置++演算子を使うと例外がスローされます。

オペランドが、そのクラスの最大値を持つ場合に後置++演算子を使ってもオーバーフローは起こりません。クラスの最小値になります。


int i = 10;

int j = i++; // j is 10. i is 11.

オペランドが proxy クラスを返す場合は proxy クラスの実体が自動的に使用されます。proxy クラスの Entity ゲッターを呼び出したのと同じ結果になります。


int i = 10;

proxy pro = new proxy(i);

int j = 10 + pro++; // j is 20. i is incremented.

後置--演算子

後置--演算子はオペランドと同じ値を持つ新しいインスタンスを返した後にオペランドの値を 1 減算します。

オペランドは int、long、real クラスのどれかでなければなりません。これ以外のクラスに後置--演算子を使うと例外がスローされます。

オペランドが、そのクラスの最小値を持つ場合に後置--演算子を使ってもオーバーフローは起こりません。クラスの最大値になります。


int i = 10;

int j = i--; // j is 10. i is 9.

オペランドが proxy クラスを返す場合は proxy クラスの実体が自動的に使用されます。proxy クラスの Entity ゲッターを呼び出したのと同じ結果になります。


int i = 10;

proxy pro = new proxy(i);

int j = 10 + pro--; // j is 20. i is decremented.

Copyright © Rice All rights reserved.