170 похожих чатов

Oбъяснить пжлст про диспоуз —————- void dosmth(){ var obj = GetObje(); obj.Dosmth(); \\ error } obj

GetObj(){
using var myobj = CreateObj()
return myobj()
}
почему его диспоузит если объект используется далее?
разве так должно происходить?
Или из-за того, что он покидает область видимости функции его диспоузит и плевать использовался ли он ранее?

6 ответов

11 просмотров

using разворачивается в try-finally, так что диспоузится после выхода из блока

Larymar-GC Автор вопроса

логично, спасибо я ожидал что у using var и using () {} разное поведение наверное зря

Лучше так не писать

Larymar-GC Автор вопроса

ну я вынес наверх void dosmth(){ using var obj = GetObje(); obj.Dosmth(); \\ error } obj GetObj(){ var myobj = CreateObj() return myobj() }

Тогда должно быть норм

Larymar-GC Автор вопроса

ну и стало норм) но багу искал прям долго было не очевидно

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

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

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
How to create an OS in C? what to study?
Linus
18
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Всем доброго вечера! Хочу поделиться своим злоключением с человеком, который, как оказалось сюда тоже скидывал свое резюме. Жаль, что я вашу группу не нашел раньше… человек ки...
Роман Ахмедзянов
4
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
9
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
5
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
Карта сайта