IT用語集 › プログラミング › UObject

UObject

プログラミング Svenska → 更新: 2026-10-26

Unreal Engineのクラス階層の根。もともと備えていないC++に、リフレクション、ガベージコレクション、シリアライズを後付けする。

C++にはリフレクションもガベージコレクションもないため、Unrealは独自に作り上げた。クラスにはUCLASS、UPROPERTY、UFUNCTIONといったマクロを付け、コンパイラより先にUnreal Header Toolがソースを読んでメタデータを生成する。これにより、プロパティをエディタに表示し、ディスクに保存し、ネットワークでレプリケートし、Blueprintから呼び出せるようになる。

コレクターはマーク&スイープ方式で、自分が知っているポインタしか辿らない。UPROPERTYのないUObjectへの生ポインタは見えないため、ポインタがまだ使われているのにオブジェクトが回収されうる。Unrealのコードで最もよくあるクラッシュの原因の一つだ。レベルに配置できるもの全般を表すAActorも、ここから継承している。

← 用語集に戻る