回答編集履歴
2
文章の修正
answer
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
`UserNames = new string[10];`の場合、添え字でアクセスできる範囲は0から9までです。
|
2
|
-
`PhotonNetwork.playerList`の個数が11以上になる場合、UserNames[10]という存在しない要素にアクセスすることになるの
|
2
|
+
`PhotonNetwork.playerList`の個数が11以上になる場合、11回目のループで`UserNames[10]`という存在しない要素にアクセスすることになるため`IndexOutOfRangeException`の例外が発生します。
|
3
3
|
|
4
4
|
解決策
|
5
5
|
- `Count`が`UserNames.Length`以上のときは`UserNames[Count]`にアクセスしないよう修正する
|
1
書式の修正
answer
CHANGED
@@ -2,6 +2,6 @@
|
|
2
2
|
`PhotonNetwork.playerList`の個数が11以上になる場合、UserNames[10]という存在しない要素にアクセスすることになるのでエラーになります。
|
3
3
|
|
4
4
|
解決策
|
5
|
-
- `Count`が`UserNames.Length`以上のときは`UserNames[Count]にアクセスしないよう修正する
|
5
|
+
- `Count`が`UserNames.Length`以上のときは`UserNames[Count]`にアクセスしないよう修正する
|
6
6
|
- `UserNames`を配列ではなくリストで管理し、`UserNames.Add(p.NickName ?? "UserName");`という形で要素を追加する
|
7
7
|
- `UserNames`を配列ではなくリストで管理し、LINQを使って`UserNames`を更新する(`UserNames = PhotonNetwork.playerList.Select(x => x.NickName ?? "UserName");`)
|