• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

객체생성

21.03.02 08:40 작성 조회수 140

0

저는 Human에 빨간줄이 그어집니다.

뒤에 접근제한자 강의를 듣고 class앞에는 internal이 생략된거라 스크립트에 class를 선언하면 아무 스크립트에서나 참조가 된다 하셨지만 저는 안되네요

혼자 이것저것 해본결과

classExample이랑 ObjectExample이랑 같은 namespase를 적고

classExample 스크립트에서 public class classExample : MonoBehavior 이 코드가 없으면 다른 스크립트에서도 Human을 참조가 되더라고요

강의 영상 그대로 객체를 생성하고싶은데 어떻게 해야할까요 

답변 1

답변을 작성해보세요.

3

정하늘님 안녕하세요!

말씀해주신 상황에서 가장 의심스러운 부분은 Human 클래스의 선언 위치입니다.
만약 Human클래스를 ClassExample 클래스 내부에 선언하셨다면 아래와 같이 Human 클래스를 ClassExample 클래스 바깥에 선언해주셔야합니다.

강의에서 말씀드렸듯이 클래스는 기본적으로 internal 접근 제한자를 갖기 때문에 다른 스크립트에서 접근이 가능하지만 어떤 클래스 안에 중첩하여 클래스를 선언했다면 다른 스크립트에서 중첩된 클래스를 찾을 수 없습니다!

using UnityEngine;

public class ClassExample : MonoBehaviour
{


}

class Human
{

}

혹시 위 방법으로 해결이 되지 않으신다면 Human 클래스가 선언된 부분까지 같이 캡쳐 혹은 복사해서 다시 질문 올려주세요. 감사합니다 :)

정하늘님의 프로필

정하늘

질문자

2021.03.02

정말 감사드립니다 해결완료,,!!