質問編集履歴
1
内容を修正させていただきました
title
CHANGED
File without changes
|
body
CHANGED
@@ -7,18 +7,24 @@
|
|
7
7
|
### 具体的な内容
|
8
8
|
|
9
9
|
```
|
10
|
+
__// 修正__
|
10
11
|
public class A
|
11
12
|
{
|
13
|
+
private int ListSize = 5;
|
14
|
+
private List<string> StrList;
|
15
|
+
private List<float> FloatList;
|
12
16
|
public A(){
|
13
17
|
初期化内容;
|
14
18
|
}
|
15
19
|
|
16
20
|
public A(string str){
|
17
|
-
|
21
|
+
// リストの中身をListSize分作成する
|
22
|
+
for(var i=0;i<ListSize;i++) StrList.add("");
|
18
23
|
}
|
19
24
|
|
20
25
|
public A(float value){
|
21
|
-
|
26
|
+
// リストの中身をListSize分作成する
|
27
|
+
for(var i=0;i<ListSize;i++) FloatList.add(0);
|
22
28
|
}
|
23
29
|
|
24
30
|
public Method(){
|
@@ -26,18 +32,21 @@
|
|
26
32
|
}
|
27
33
|
|
28
34
|
public Method(string str){
|
29
|
-
|
35
|
+
// 実行毎に、最新から5つのstrを保持するStrListを作成する
|
36
|
+
|
30
37
|
}
|
31
38
|
|
32
39
|
public Method(float value){
|
33
|
-
|
40
|
+
// 実行毎に、最新から5つのvalueを保持するFloatListを作成する
|
34
41
|
}
|
35
42
|
}
|
36
43
|
```
|
37
|
-
|
38
44
|
具体的な内容としては、現在同じ処理をそれぞれ型の違う(Vector3/Quaternion/float)数値へかけています。
|
39
45
|
そこで処理を共通化したいのですが、処理を掛ける型分クラスを作成するのはどうかと思い上記のようなクラスを考えました。
|
40
46
|
しかし、上記の例だとA(string str)でインスタンス化し、Method(string str)のメソッドが使えれば問題はないのですが引数を間違ってMethod(float value)を実行してしまうことがあると思います。
|
41
47
|
自分だけでやっている場合にはこれでもいいかもしれませんが、多人数でこのクラスを使用する場合は問題になります。
|
42
48
|
そこで使用したコンストラクタによりメソッドが有効化されるようなことはできないのか、そもそもクラスを分けるべきなのかと思い質問させていただきました。
|
43
|
-
よろしくお願いいたします。
|
49
|
+
よろしくお願いいたします。
|
50
|
+
|
51
|
+
※追記
|
52
|
+
使用想定としては、unityでupdate()が呼ばれる毎に最新の値をListSize分常に持ちたいと考えています。
|