回答編集履歴
1
追記
test
CHANGED
@@ -3,3 +3,29 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
追記予定
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
> void mySwap(T* x, T* y) {
|
10
|
+
|
11
|
+
> T* tmp = x;
|
12
|
+
|
13
|
+
> x = y;
|
14
|
+
|
15
|
+
> y = tmp;
|
16
|
+
|
17
|
+
> }
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
この関数の中で、仮引数x、yは実引数(ここではaのアドレス、bのアドレス)の一時コピー(関数mySwapが終わるまでの間だけ有効)に過ぎないものです。この書き方では、xとyの値を交換しているだけです。したがって、呼び出し元における変数aとかbに影響はありません。
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
*x = なんとか
|
26
|
+
|
27
|
+
*y = なんとか
|
28
|
+
|
29
|
+
といった記述が必要です。(これだけで良いというわけではありません)
|
30
|
+
|
31
|
+
|