Есть такой вопрос по крестам в уече Есть у меня Member

variable:
TWeakObjectPtr<AActor> Foo;
Нужно ли ее оборачивать UPROPERTY для GC?
UPROPERTY()
TWeakObjectPtr<AActor> Foo;

Просто для обычных поинтеров на объекты это обязательно, а вот для вик я хз, GC вроде не должен знать про этот поинтер, хотя он и занулится. В общем нужны разъяснения)


Upd:
Гугл привел к этому:

You can think of it is a such way:
1. It is weak reference field, so it is not blocking GC
2. It is UPROPERTY, so UE know something about this field. It knows that this struct contains this field and calculate size of struct with paying attention to it. Also UE adds special methods and registers all such UPROPERTies for this struct class

5 ответов

25 просмотров

Нет, на Tweak не нужно, он для того и нужен чтобы избегать циклических ссылок

Constantine-Romakhov Автор вопроса

В общем UPROPERTY и TWeakObjectPtr валидная штука

ага

Зависит от того, что ты хочешь сделать. Если нужно в BP - оборачивай. Не нужно - не оборачивай. WeakPtr в BP поддерживаются.

Constantine-Romakhov Автор вопроса

Тут дело ведь не только "если хочу в BP". А как же сериализация и рефлекшн система? Без UPROPERTY этого ничего не будет

Похожие вопросы

Обсуждают сегодня

Ребята, всем привет. Подскажите, пожалуйста, можно ли как-то через бота понять, что этого бота добавили в группу\канал и выдали ему права администратора?
Artem Stormageddon
9
Привет, такой вопросик появился кажется ли вам что Rust слишком сложный/строгий для высокоуровневого программирования и слишком "безопасный"/строгий для низкоуровневого?
Крокант
10
А не хотим ли мы развлечься? 😉 Но так чтобы с пользой для наших профессиональных навыков?? 👨‍🎓👩‍🎓 Предлагаю на октябрь запланировать тестовый запуск новой командной игры "Игр...
Andrii Kurdiumov
2
Это переведённый текст с английского. Я не говорю на русском, но могу использовать переводчик Телеграм. Приветствую! Я начинающий веб-разработчик и все еще учусь. В настояще...
𐩱𐩪𐩣𐩱𐩲𐩺𐩡
2
Всем привет. Хотел бы написать для себя свою ос. Причины: 1) нужен опыт в чем-то 2) будет меньше весить 3) свое, но там будут свои задумки Я понимаю что нужно писать для всег...
Shadow Akira
18
А какие существуют способы обработки ошибок выделения памяти в ядре? Т.е., допустим, есть функция, которая возвращает адрес свободной страницы в физической памяти и диапазон в...
disba1ancer
51
Всем привет! Скажите, никто не пытался уменьшить размер процесса ssl, которые ассоциируется с открытым соединением (не помню точное название этого процесса, но там была какая-...
Алексей
20
5? да там все 10
Boris Vinogradov
12
у кого сколько оперативы на базе данных ?
АДИЛЬБЕК
4
Привет всем! Почему этот код не срабатывает при добавлении или удалении пользователя из чата? bot.on('chat_member', async (ctx) => { console.log(ctx); }) bot.launch({allo...
Alexander
5
Карта сайта