| X(a) | コピーコンストラクタで、X(a)==a を満たす。要デストラクタ。 |
| X u(a) | 結果として u==a となる。 |
| X u = a | 同上。 |
| a == b | 等値関係。*a == *b であること。結果は bool。 |
| a != b | !(a==b) と同じでなければいけない。 |
| *a | 参照外し。結果は T。 |
| ++r | 結果は const X&。末尾直後以外の場合、値は参照外し可能か末尾直後となる。 |
| r++ | 結果は const X&。{X x = r; ++r; return x;} と同等であること。 |
| *++r | 結果は T。 |
| *r++ | 結果は T。 |
| X(a) | *a = t は *X(a) = t と同等であること。要デストラクタ。 |
| X u(a) | u は a のコピー。等値は定義されている必要はない。要デストラクタ。 |
| X u = a | 同上。 |
| *a = t | 結果はなし。a の指す位置に t が代入される。 |
| ++r | 結果は const X&。末尾直後以外の場合、値は参照外し可能か末尾直後となる。 |
| r++ | 結果は const X&。{X x = r; ++r; return x;} と同等であること。 |
| *++r | 結果は T。 |
| *r++ | 結果は T。 |
| X u | 結果は無保証。要デストラクタ。 |
| X() | 同上。 |
| X(a) | コピーコンストラクタで、X(a)==a を満たす。要デストラクタ。 |
| X u(a) | 結果として u==a となる。要デストラクタ。 |
| X u = a | 同上。 |
| a == b | 等値関係。*a == *b であること。結果は bool。 |
| a != b | !(a==b) と同じでなければいけない。 |
| r = a | 結果は X&。r==a であること。 |
| *a | 参照外し。結果は T。a が可変の場合、*a = t も有効。 |
| ++r | 結果は const X&。末尾直後以外の場合、値は参照外し可能か末尾直後となる。 |
| r++ | 結果は const X&。{X x = r; ++r; return x;} と同等であること。 |
| *++r | 結果は T。 |
| *r++ | 結果は T。 |
| --r | 結果は const X&。末尾直後以外の場合、値は参照外し可能か末尾直後となる。 |
| r-- | 結果は const X&。{X x = r; --r; return x;} と同等であること。 |
| *--r | 結果は T。 |
| *r-- | 結果は T。 |
| r += n | 結果は正に X&。以下と同じ値を一定時間で求めること。
{ Distance m = n;
if (m >= 0) while (m--) ++r;
else while (m++) --r;
return r; }
|
| a+n | 結果は正に X。{X x = a; return a += n;} と同等であること。 |
| n+a | 同上。 |
| r -= n | 結果は正に X&。r += -n と同等であること。 |
| a-n | 結果は正に X。{X x = a; return a -= n;} と同等であること。 |
| b-a | 結果は正に Distance。a+n==b のとき、結果の値は n であること。 |
| a[n] | 結果は T。値は *(a+n)。 |
| a < b | 結果は bool。< は全順序であること。 |
| a > b | 結果は bool。b < a と同等であること。 |
| a >= b | 結果は bool。!(a < b) と同等であること。 |
| a <= b | 結果は bool。!(b < a) と同等であること。 |