Size: a a a

2021 July 31

WS

Wire Snark in rannts
ну, в Си то же самое выглядит жутко, с goto и гемором
источник

WS

Wire Snark in rannts
в Расте надо реализовать Drop, если это твой собственный тип
источник

WS

Wire Snark in rannts
В плюсах — ну тоже деструктор, как и во всех ООП
источник

RB

Roman Bolkhovitin in rannts
А как хорошо? with? Или try с ресурсами?
источник

WS

Wire Snark in rannts
ну вот да, альтернативы именно такие.. но это если эксепшны есть
источник

WS

Wire Snark in rannts
по-моему defer гораздо удобнее :)
источник

A🌚

Al 🌚l in rannts
+++
источник

A🌚

Al 🌚l in rannts
В го есть интерфейсы)
источник

A🌚

Al 🌚l in rannts
В раст есть трейты
источник

WS

Wire Snark in rannts
это я знаю. Но они не такие немного, насколько я понимаю. Т.е. опять же нужно будет на каждый новый вид девайса создавать тип и реализовывать интерфейс (путем добавления функций соответствующих, неявно)?
источник

WS

Wire Snark in rannts
да.. но опять нужен тип. Или какой-то динамический dyn trait, с ним я не знаком пока)
источник

WS

Wire Snark in rannts
реализовать интерфейс через указатели на функции не получится нигде, кроме как в Си?
источник

A🌚

Al 🌚l in rannts
Зависит от того, что ты именно хочешь от девайса) можно и его сделать интерфейсом
источник

ИК

Иван Кривошеев... in rannts
Можно в расте
источник

ИК

Иван Кривошеев... in rannts
impl Fn (...) -> ...
источник

SZ

Sergey Z in rannts
Декоратор, контекстный менеджер, по описанию, что-то вполне обычное
источник

WS

Wire Snark in rannts
девайс тут для примера.. я хочу динамически собрать реализацию интерфейса. В Си я могу без проблем это сделать.. а в Го?
источник

WS

Wire Snark in rannts
не понял) с Растом я тоже на уровне хеллоу-ворлд знаком (ну и книжку их прочитал)
источник

WS

Wire Snark in rannts
Как по мне, defer проще чем выше перечисленное)) И даже сложно представить, сколько надо усилий для их реализации... в сравнении с 1 строчкой))
источник

ИК

Иван Кривошеев... in rannts
fn do_twice(f: fn(i32) -> i32, arg: i32) -> i32 {
   f(arg) + f(arg)
}
источник