Size: a a a

2021 March 24

МВ

Макс Воробьев... in dlang.ru
всякие AA и делегаты
источник

КП

Константин Пунш... in dlang.ru
Макс Воробьев
всякие AA и делегаты
Ну делегаты только при одном условии вроде не работают
источник

КП

Константин Пунш... in dlang.ru
Если что-то типо такого

auto func()
{
int x;
return () => x++;
}
источник

И

Игорь in dlang.ru
и тут можно добавить @nogc к func?
источник

И

Игорь in dlang.ru
а, "НЕ РАБОТАЮТ"
источник

И

Игорь in dlang.ru
ну так это самый распространенный случай
источник

КП

Константин Пунш... in dlang.ru
Игорь
ну так это самый распространенный случай
Разве?
источник

КП

Константин Пунш... in dlang.ru
Если не менять переменные функций то все ок
источник

И

Игорь in dlang.ru
могу ошибаться, но какая разница меняешь ты ее или нет? где-то должен сохраниться захваченный контекст для делегата даже если ты его не меняешь
источник

КП

Константин Пунш... in dlang.ru
Игорь
могу ошибаться, но какая разница меняешь ты ее или нет? где-то должен сохраниться захваченный контекст для делегата даже если ты его не меняешь
Ну не обращаешься к ним
источник

И

Игорь in dlang.ru
эм, ну если не обращаешься, то они и попадать в замыкание не должны и тогда это как бы и не делегат а функция
источник

КП

Константин Пунш... in dlang.ru
Константин Пунш
Если что-то типо такого

auto func()
{
int x;
return () => x++;
}
А все остальное ОК
источник

МВ

Макс Воробьев... in dlang.ru
@nogc
auto writer(int v) {
   return () {
       printf("%d\n", v);
   };
}
тут от v нужно только значение, а в nogc  уже не работает
источник

МВ

Макс Воробьев... in dlang.ru
в ++ есть варианты захвата - ссылка или значение
источник

КП

Константин Пунш... in dlang.ru
Макс Воробьев
@nogc
auto writer(int v) {
   return () {
       printf("%d\n", v);
   };
}
тут от v нужно только значение, а в nogc  уже не работает
Ну так, v где-то надо сохранить
источник

КП

Константин Пунш... in dlang.ru
А аллоцирование запрещено
источник

КП

Константин Пунш... in dlang.ru
Все просто
источник

И

Игорь in dlang.ru
Макс Воробьев
@nogc
auto writer(int v) {
   return () {
       printf("%d\n", v);
   };
}
тут от v нужно только значение, а в nogc  уже не работает
тут принтф может гадить
источник

DH

Dark Hole in dlang.ru
Игорь
тут принтф может гадить
Вряд ли
источник

МВ

Макс Воробьев... in dlang.ru
Игорь
тут принтф может гадить
не. с ним все норм
источник