🌥もこも制作日記🌥

創作に関することを書いていきます。だいたいゲーム系

【UE4.20.3】UEC++エラー修正【不完全型のクラス】

不完全クラス型エラーとは

UEC++に限った話ではないかと思いますがエラー修正の備忘録です

不完全型クラスへのポインターは使用できません。

不完全型クラスとは宣言がされていないクラスのことです。

不完全型クラスの状態では以下の事ができません。

  • そのクラス型の変数の宣言
  • そのクラス型が持つ関数の参照/呼び出し
  • そのクラス型が持つ変数の参照

画像では UStatic Mesh Component が 不完全型クラスにも関わらずOnComponentHitを参照しようとしているためエラーが出ています。

f:id:sim-mokomo:20181011192050p:plain

修正方法

完全クラス型にしてあげることでエラーを修正できます。 具体的にはそのクラスが宣言されているヘッダーファイルをincludeする事で解決できます。

クラスの上にマウスカーソルを置き F12 キーを押すことでクラスが宣言されているヘッダーファイルの場所が分かります。

f:id:sim-mokomo:20181011195753p:plain

ヘッダーファイルの置き場所が分かったので以下のようにすることで読み込むことができ、完全型クラスにすることができます!

#include "Components/StaticMeshComponent.h"

C++でつくるUnreal Engineアプリ開発 for Windows & macOS 〜初歩からプラグイン開発まで〜

C++でつくるUnreal Engineアプリ開発 for Windows & macOS 〜初歩からプラグイン開発まで〜