다른 클래스의 변수를 참조하면 NULL이 생성됩니다.

동산

genDicTable과 StartGame의 두 가지 클래스가 있습니다. StartGame에서 genDicTable의 변수를 참조하고 싶지만 NULL이 생성됩니다.

genDicTable.cs

using UnityEngine;
using System.Collections;
using System.Collections.Generic;

public class genDicTable : MonoBehaviour
{
    public TextAsset file;
    public double masterCount;

    private void Start()
    {
        Load(file);

        masterCount = rowList.Count;
        Debug.Log(masterCount); // <-- This properly prints out the value of masterCount    
    }

    public class Row
    {
        public string id;
        public string word;
        public string length;
    }

    public List<Row> rowList = new List<Row>();

    public void Load(TextAsset csv) {
        // This function assigns a value into RowList
    }
}

StartGame.cs

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class StartGame : MonoBehaviour {

    public genDicTable GEN;    

    private void Start()
    {
        Debug.Log(GEN.masterCount); // <-- This yields NULL.
    }
}

따라서 문제는 StartGame.cs에서 masterCount 변수에 액세스 할 때 "NullReferenceException : Object reference not set to an object of an object"오류가 발생한다는 것입니다.

내가 여기서 무엇을 놓치고 있습니까?

FCin

해당 개체에 대한 참조가 필요합니다.

클래스가 동일한 객체에 연결된 경우 StartGame다음을 수행 할 수 있습니다.public genDicTable GEN = GetComponent<genDicTable>();

클래스가 다른 개체에 연결되어 있으면 public genDicTable GEN = GameObject.Find("YourOtherObjectName").GetComponent<genDicTable>();

수정 :

경우 genDicTable스크립트가 존재하고 당신은 그것을 참조 할 :

public class StartGame : MonoBehaviour {

    public genDicTable GEN;    

    private void Start()
    {
        GEN = GameObject.Find("your object's name").GetComponent<genDicTable>();`
        Debug.Log(GEN.masterCount); // <-- This yields NULL.
    }
}

경우 genDicTable스크립트가 수행 되지 존재하고 당신은 단지 그것의 새로운 인스턴스를 만들려면 다음 확인 대답을.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

클로저의 변수를 반환하면 참조 대신 복사본이 생성됩니다.

분류에서Dev

메서드를 통해 다른 클래스의 클래스 변수 참조

분류에서Dev

C # 참조 유형을 가리키는 변수를 다른 변수에 할당하면 후자의 변수에 무엇이 저장됩니까?

분류에서Dev

동일한 클래스에서 다른 버튼을 클릭하면 jquery를 통한 버튼의 클래스 변경이 다시 변경됩니다.

분류에서Dev

다른 클래스의 개체를 생성하여 값을 저장하고 싶지만 null 포인터 예외가 표시됩니다.

분류에서Dev

변수 데이터를 다른 폼의 변수에 전달하면 null이됩니다. C # WPF

분류에서Dev

기본 클래스의 복사 생성자를 호출하면 안됩니다.

분류에서Dev

지원 중단 : this를 반환하면 this 매개 변수에 대한 참조가 이스케이프됩니다.

분류에서Dev

파이썬의 다른 클래스에서 한 클래스의 한 변수에 대한 참조를 얻는 방법은 무엇입니까?

분류에서Dev

A 변수를 사용하면 다른 클래스가 적용됩니다. 자바 안드로이드

분류에서Dev

다른 클래스의 개체를 참조하는 방법 [C #]

분류에서Dev

Lua 래퍼를 통해 C ++ 클래스 상태에 액세스하면 가비지 값이 생성됩니다.

분류에서Dev

클래스 데코레이터-클래스 필드를 수정하면 기본 클래스의 값도 변경됩니다.

분류에서Dev

예외가 발생하면 클래스가 null이됩니다.

분류에서Dev

포인터에 변수 참조를 할당하면 의도하지 않은 동작이 발생합니다.

분류에서Dev

Enumerable.Empty <> ()를 IEnumerable을 구현하는 다른 클래스로 캐스팅하면 null이 반환됩니다.

분류에서Dev

Interface Builder에서 동일한 클래스의 여러 객체를 인스턴스화하면 공유 속성이 생성됩니다.

분류에서Dev

다른 클래스의 UIView 함수를 사용하면 충돌이 발생합니다.

분류에서Dev

파생 클래스를 선언하는 동안 기본 클래스의 생성자가 호출됩니다.

분류에서Dev

다른 클래스의 개체에서 참조 변수

분류에서Dev

클래스 멤버 참조 변수를 반환하면 런타임 오류가 발생합니다.

분류에서Dev

한 데이터 클래스의 속성을 다른 데이터 클래스 (하위 클래스)로 변환

분류에서Dev

다른 하위 클래스의 하위 클래스를 참조 할 수 있습니까?

분류에서Dev

수퍼 클래스의 클래스 필드와 이름이 같은 생성자 매개 변수를 명확하게합니다.

분류에서Dev

다른 클래스에서 참조 된 텍스트 필드의 값을 변경하면 오류가 발생합니다.

분류에서Dev

다른 클래스의 변수를 사용하는 방법

분류에서Dev

breeze / knockout 테이블에서 삭제하면 "null의 'BoardName'속성을 읽을 수 없음"이 생성됩니다.

분류에서Dev

두 클래스를 참조하면 StackOverflow 오류가 발생합니다. 왜?

분류에서Dev

두 클래스를 참조하면 StackOverflow 오류가 발생합니다. 왜?

Related 관련 기사

  1. 1

    클로저의 변수를 반환하면 참조 대신 복사본이 생성됩니다.

  2. 2

    메서드를 통해 다른 클래스의 클래스 변수 참조

  3. 3

    C # 참조 유형을 가리키는 변수를 다른 변수에 할당하면 후자의 변수에 무엇이 저장됩니까?

  4. 4

    동일한 클래스에서 다른 버튼을 클릭하면 jquery를 통한 버튼의 클래스 변경이 다시 변경됩니다.

  5. 5

    다른 클래스의 개체를 생성하여 값을 저장하고 싶지만 null 포인터 예외가 표시됩니다.

  6. 6

    변수 데이터를 다른 폼의 변수에 전달하면 null이됩니다. C # WPF

  7. 7

    기본 클래스의 복사 생성자를 호출하면 안됩니다.

  8. 8

    지원 중단 : this를 반환하면 this 매개 변수에 대한 참조가 이스케이프됩니다.

  9. 9

    파이썬의 다른 클래스에서 한 클래스의 한 변수에 대한 참조를 얻는 방법은 무엇입니까?

  10. 10

    A 변수를 사용하면 다른 클래스가 적용됩니다. 자바 안드로이드

  11. 11

    다른 클래스의 개체를 참조하는 방법 [C #]

  12. 12

    Lua 래퍼를 통해 C ++ 클래스 상태에 액세스하면 가비지 값이 생성됩니다.

  13. 13

    클래스 데코레이터-클래스 필드를 수정하면 기본 클래스의 값도 변경됩니다.

  14. 14

    예외가 발생하면 클래스가 null이됩니다.

  15. 15

    포인터에 변수 참조를 할당하면 의도하지 않은 동작이 발생합니다.

  16. 16

    Enumerable.Empty <> ()를 IEnumerable을 구현하는 다른 클래스로 캐스팅하면 null이 반환됩니다.

  17. 17

    Interface Builder에서 동일한 클래스의 여러 객체를 인스턴스화하면 공유 속성이 생성됩니다.

  18. 18

    다른 클래스의 UIView 함수를 사용하면 충돌이 발생합니다.

  19. 19

    파생 클래스를 선언하는 동안 기본 클래스의 생성자가 호출됩니다.

  20. 20

    다른 클래스의 개체에서 참조 변수

  21. 21

    클래스 멤버 참조 변수를 반환하면 런타임 오류가 발생합니다.

  22. 22

    한 데이터 클래스의 속성을 다른 데이터 클래스 (하위 클래스)로 변환

  23. 23

    다른 하위 클래스의 하위 클래스를 참조 할 수 있습니까?

  24. 24

    수퍼 클래스의 클래스 필드와 이름이 같은 생성자 매개 변수를 명확하게합니다.

  25. 25

    다른 클래스에서 참조 된 텍스트 필드의 값을 변경하면 오류가 발생합니다.

  26. 26

    다른 클래스의 변수를 사용하는 방법

  27. 27

    breeze / knockout 테이블에서 삭제하면 "null의 'BoardName'속성을 읽을 수 없음"이 생성됩니다.

  28. 28

    두 클래스를 참조하면 StackOverflow 오류가 발생합니다. 왜?

  29. 29

    두 클래스를 참조하면 StackOverflow 오류가 발생합니다. 왜?

뜨겁다태그

보관