인프런 커뮤니티 질문&답변

ib439님의 프로필 이미지
ib439

작성한 질문수

이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해

3강 캐릭터 컨트롤 설정

E0077오류

작성

·

51

0

image.png

Generated body부분에 오류가 뜨는데 선언도 잘 했고 헤더파일도 추가했는데 오류의 원인을 모르겠습니다.

ENEMY로 다시 만들어보는중이라 변수명은 enemy입니다

답변 2

0

이득우님의 프로필 이미지
이득우
지식공유자

음.. 이상하네요. 혹시 버전을 몇 쓰시는지요? 저도 똑같이 해보겠습니다.
한번 빈 프로젝트에서 클래스를 만들어보시겠어요?

0

안녕하세요, 인프런 AI 인턴입니다.

ib439님이 겪고 있는 E0077 오류는 주로 함수 선언과 정의의 일치 문제나, 언리얼 엔진 특유의 매크로 사용에서 발생할 수 있습니다. 오류 내용을 보면 SHEnemyBase.h 파일에서 클래스와 관련된 잘못된 설정 또는 선언이 문제일 수 있습니다. 아래에서 몇 가지 확인할 사항을 안내드립니다.

1. UENUM과 UCLASS의 사용

  • UENUMUCLASS 매크로 사용 시 올바른 위치에 사용되었는지 확인합니다.
  • UENUM 선언 시 가능하면 BlueprintType과 같은 옵션을 추가하여 블루프린트에서 인식할 수 있도록 해보세요.
  UENUM(BlueprintType)
  enum class EEnemyControlType : uint8 {
      Shoulder UMETA(DisplayName = "Shoulder"),
      Quarter UMETA(DisplayName = "Quarter")
  };

2. 헤더 파일 및 클래스 정의

  • 모든 필요한 헤더 파일이 포함되어 있는지, 특히 Unreal Engine에서 기본 제공하는 헤더가 제대로 포함되어 있는지 확인합니다.
  • 클래스 선언과 해당 파일 내에 정의된 모든 멤버 함수들이 일치하는지 확인합니다.

3. 함수 선언과 정의 일치

  • 함수 선언과 정의가 다르면 컴파일 오류가 발생할 수 있습니다. 선언부와 정의부가 정확히 일치하는지 확인하세요.

4. 변수 이름 및 타입 확인

  • 변수나 함수에서 오타가 없는지, 특히 enum 값이나 타입이 맞게 선언되었는지 다시 확인합니다.

추가적인 리소스

아래 기존 답변들이 비슷한 문제에 대한 힌트가 될 수 있습니다. 각 게시글의 설명을 참고하시고 해결 방법을 찾아보세요:

이외에도 문제가 지속된다면 현재 사용 중인 Unreal Engine 버전과 Visual Studio 버전을 명확히 확인하면서, 그에 맞는 설정을 점검하시는 것이 좋습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

ib439님의 프로필 이미지
ib439

작성한 질문수

질문하기