質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

1回答

975閲覧

Unity 配列 配列名.Lengthでエラーが出てしまう

FuelCompany

総合スコア2

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2021/07/29 15:12

前提・実現したいこと

ゲームオブジェクトを配列から取得してすべてsetactive(False)にしようとしました

発生している問題・エラーメッセージ

配列名.Lengthとしているのに、インデックスが配列の範囲外とエラーが出ます

IndexOutOfRangeException: Index was outside the bounds of the array.

該当のソースコード

c#

1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class MalingScript : MonoBehaviour 6{ 7 8 public GameObject One; 9 public GameObject Two; 10 public GameObject Three; 11 public GameObject Four; 12 public GameObject Five; 13 public GameObject Six; 14 public GameObject Seven; 15 public GameObject Eight; 16 public GameObject Nine; 17 public GameObject Ten; 18 public GameObject Eleven; 19 public GameObject Twelve; 20 public GameObject Thrteen; 21 22 // 型名   配列の名前 23 GameObject[] TrampBox = new GameObject[13]; 24 25 // Start is called before the first frame update 26 void Start() 27 { 28 TrampBox[0] = One; 29 TrampBox[1] = Two; 30 TrampBox[2] = Three; 31 TrampBox[3] = Four; 32 TrampBox[4] = Five; 33 TrampBox[5] = Six; 34 TrampBox[6] = Seven; 35 TrampBox[7] = Eight; 36 TrampBox[8] = Nine; 37 TrampBox[9] = Ten; 38 TrampBox[10] = Eleven; 39 TrampBox[11] = Twelve; 40 TrampBox[12] = Thrteen; 41 TrampBox[TrampBox.Length].SetActive(false); // エラー元 42 }

試したこと

配列の要素の個数をあらかじめ決めるようにしましたが、変わりませんでした

補足情報(FW/ツールのバージョンなど)

Unity2019.4
VisualStudio2019

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/07/29 21:58

TrampBox.Lengthの数値を確認しましょう。 答えがわかるのではないでしょうか。 あと、上記コードでは実現したい事の内容にはならないと思います
guest

回答1

0

TrampBox.Lengthは13なので、それでは範囲外となります

そして、そんなことをしても、すべて、とはなりません

投稿2021/07/29 22:11

編集2021/07/29 22:12
y_waiwai

総合スコア87774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問