回答編集履歴
1
ミス修正
answer
CHANGED
@@ -4,17 +4,18 @@
|
|
4
4
|
|
5
5
|
前者の場合は、クラスAの全てのインスタンスで同じmTestが共有されます。
|
6
6
|
```C#
|
7
|
-
A a0 = new A;
|
7
|
+
A a0 = new A();
|
8
|
-
A a1 = new A;
|
8
|
+
A a1 = new A();
|
9
9
|
```
|
10
|
-
とした時、a0.mTest[0,0]
|
10
|
+
とした時、a0.mTest[0,0]やa1.mTest[0,0]の形式ではアクセスできません。
|
11
|
+
A.mTest[0,0]でアクセスしますので、a0, a1のそれぞれに別の値を設定することができません。
|
11
12
|
|
12
13
|
そして、このケースではプリフィクスとしてmを使うことは危険かもしれません。mはmemberのmでインスタンスに属する変数を意味することが多いからです。
|
13
14
|
|
14
15
|
後者の場合は、クラスAのインスタンス毎にmTestが生成されます。
|
15
16
|
```C#
|
16
|
-
A a0 = new A;
|
17
|
+
A a0 = new A();
|
17
|
-
A a1 = new A;
|
18
|
+
A a1 = new A();
|
18
19
|
```
|
19
20
|
とした時、a0.mTest[0,0]とa1.mTest[0,0]が異なる値を保持できます。
|
20
21
|
|