Leksykon IT › Programowanie › UObject

UObject

Programowanie Svenska → Zaktualizowano: 2026-10-26

Korzeń hierarchii klas Unreal Engine, dokładający refleksję, odśmiecanie i serializację do C++, który nigdy ich nie miał.

C++ nie ma ani refleksji, ani odśmiecania pamięci, więc Unreal buduje własne. Klasy oznacza się makrami takimi jak UCLASS, UPROPERTY i UFUNCTION, a Unreal Header Tool czyta kod przed kompilatorem i generuje metadane. Dzięki temu właściwości pojawiają się w edytorze, zapisują na dysk, replikują przez sieć i można je wywołać z Blueprintów.

Kolektor działa metodą mark-and-sweep i podąża tylko za wskaźnikami, o których wie. Surowy wskaźnik na UObject bez UPROPERTY jest dla niego niewidoczny, więc obiekt może zostać zebrany, gdy wskaźnik jest jeszcze używany — to jedna z najczęstszych przyczyn crashy w kodzie Unreala. Stąd dziedziczy też AActor, czyli wszystko, co da się postawić na poziomie.

← Wróć do leksykonu