[UE4]C++实现动态(Runtime)加载的问题:LoadClass<T>()和LoadObject<T>() - 知乎
动态加载UObject和动态加载UClass分别用LoadObject<T>(),和LoadClass<T>() ,两者均在在UObjectGlobals.h中。
FindObject和LoadObject有什么区别?UE4引用资源小结 - 知乎
如果资源已经加载完毕: FindObject<>()
如果资源还没加载: LoadObject<>()
//UObjectGlobals.h
/**
* Find an optional object.
* @see StaticFindObject()
*/
template< class T >
inline T* FindObject( UObject* Outer, const TCHAR* Name, bool ExactClass=false )
{
return (T*)StaticFindObject( T::StaticClass(), Outer, Name, ExactClass );
}
/**
* Load an object.
* @see StaticLoadObject()
*/
template< class T >
inline T* LoadObject( UObject* Outer, const TCHAR* Name, const TCHAR* Filename=nullptr, uint32 LoadFlags=LOAD_None, UPackageMap* Sandbox=nullptr )
{
return (T*)StaticLoadObject( T::StaticClass(), Outer, Name, Filename, LoadFlags, Sandbox );
}