Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
FArchive& operator<<( UObject*& Object )
{
// Avoid duplicate entries.
if ( Object != NULL && !SerializedObjects.Contains(Object) )
{
SerializedObjects.Add(Object);
if ( !Object->IsA(UField::StaticClass())
&& (Object->NeedsLoadForClient() || Object->NeedsLoadForServer()) )
{
if (EditorContentPackages.Contains(Object->GetOutermost())
&& Object->GetOutermost() != Object )
{
ReferencedEditorOnlyObjects.Add(Object);
}
Object->Serialize(*this);
}
}
return *this;
}
void Process(const clPtr<clTestObject>& ptr);void Process(const clTestObject* ptr);Process, код этой ф-ции будет ещё и короче (т.к. не надо доставать указатель из контейнера).clPtr есть оператор преобразования к указателю, поэтому в месте вызова функции я пишу так же — Process(smartPtr), не надо писать Process(smartPtr.get()).
Передача умных указателей по константной ссылке. Вскрытие