Size: a a a

2021 March 30

С

Сэр MSTR in Unreal Engine
Сэр Гусь Важный
Они еще это не пофиксили чтоли?
Фикс этого приведет к замедлению работы GC
источник

VA

Vladimir Alyamkin in Unreal Engine
Иван Рубан
ну если менеджер памяти через перегрузку операторов new реализован, то проблем не будет. А если через макросы и предкомпиляторы, то хз.
ну мы говорим про весьма конкретный GC анрила.
источник

С

Сэр MSTR in Unreal Engine
Vladimir Alyamkin
ну вот смотри. с точки зрения плюсов - у тебя есть неициализированный указатель. что будет в нем? мусор, не нуль.

а теперь - как это выглядит с точки зрения GC? :)
Ну это выглядит как указатель на какой-то объект, на который не останется ссылок после уничтожения данной переменной и выхода из функции
источник

VS

Vladimir SHCHerba in Unreal Engine
Vladimir Alyamkin
ну мы говорим про весьма конкретный GC анрила.
А что именно GC  анрила в такой ситуации сделает?
источник

И

Игорь in Unreal Engine
Сэр MSTR
Ну это выглядит как указатель на какой-то объект, на который не останется ссылок после уничтожения данной переменной и выхода из функции
GC работает не как RAII
источник

СВ

Сэр Гусь Важный... in Unreal Engine
Vladimir SHCHerba
А что именно GC  анрила в такой ситуации сделает?
упадет
источник

СВ

Сэр Гусь Важный... in Unreal Engine
это еще с 2016 года чтоли тянется
источник

СВ

Сэр Гусь Важный... in Unreal Engine
при удалении заподозрит что у UOBJECT'а - нет флага нужного
источник

СВ

Сэр Гусь Важный... in Unreal Engine
и офигеет
источник

ИР

Иван Рубан in Unreal Engine
Vladimir Alyamkin
ну мы говорим про весьма конкретный GC анрила.
ну конкретно про UPROPERTY вполне могут быть проблемы. У меня было по началу с ним недопонимание ) Где-то сохранит к себе ссылку на объект, а стек вычистит все и случится горе. Возможно.
источник

СВ

Сэр Гусь Важный... in Unreal Engine
ну типо попытается очистить память какую то левую
источник

AD

Aleksei DTG in Unreal Engine
Всё, понял, Вов, но без контекста, как я и сказал - не очень очевидно, т.к. в голове сразу отложилось, что этот объект будет инициализирован
источник

VA

Vladimir Alyamkin in Unreal Engine
Сэр Гусь Важный
ну типо попытается очистить память какую то левую
ага. а еще веселее, когда у тебя мусор оказался валидным UObject'ым указателем, и произойдет двойное удаление.
источник

СВ

Сэр Гусь Важный... in Unreal Engine
ну, как повезет
источник

VA

Vladimir Alyamkin in Unreal Engine
т.к. у анрила резерв же UObject'ов - шанс попасть туда в некоторых кейсах весьма велик)
источник

VS

Vladimir SHCHerba in Unreal Engine
А если
void AMyActor::myfunc()
{
   FMyStruct struct {};
}

GC
нормально отработает? 🤔
источник

VA

Vladimir Alyamkin in Unreal Engine
а теперь вопрос "со звездочкой" - почему такое не происходит с UClass'ами, только UStruct? :)
источник

И

Игорь in Unreal Engine
По какой причине UObject'ы дефолтно неинициализированы в таком случае?
источник

СВ

Сэр Гусь Важный... in Unreal Engine
Игорь
По какой причине UObject'ы дефолтно неинициализированы в таком случае?
*указатели на uobject'ы
источник

И

Игорь in Unreal Engine
НВМ
источник