Size: a a a

2021 May 07

t

ttldtor in codingteam
для*
источник

c

codingteam@cjr in codingteam
Minoru
ого
источник

c

codingteam@cjr in codingteam
Minoru
и будут у нас приложения по сто лет запускаться, потому что пионеры понапишут факториалов в этих конструкторах?
источник

t

ttldtor in codingteam
ну, как в шарпе, джаве, ди есть просто static конструкторы, а для плюсов надо городить класс, потом заводить статическое поле с типом этого класса
у этого класса будет конструктор, который и вызовется в статике
источник

c

codingteam@cjr in codingteam
Minoru
я же правильно понимаю, что это конструкторы без параметров?
источник

c

codingteam@cjr in codingteam
Minoru
т.е. фактически ты просто хочешь указать блок кода, который будет выполняться во время инициализации
источник

t

ttldtor in codingteam
Ну, на самом деле, большую часть я могу решить уже с констэкспр лямбдами, но у меня C++11 =(
источник

t

ttldtor in codingteam
И желательно, чтобы он выполнился лениво)
источник

c

codingteam@cjr in codingteam
Minoru
ух, кокой ты!
источник

t

ttldtor in codingteam
то есть, пока я класс не дёргаю, он не выполняется)
источник

t

ttldtor in codingteam
да, очень хотелось бы не делать лишнего)))
источник

c

codingteam@cjr in codingteam
Minoru
пусть коммитет делает!
источник

t

ttldtor in codingteam
а, не, через конструктор не получится лениво
источник

t

ttldtor in codingteam
в смысле, через дополнительное статическое поле и класс с конструктором
источник

t

ttldtor in codingteam
потому что надо где-то проинициализировать это поле
источник

t

ttldtor in codingteam
остаются специальные статические методы, которые будут инициализировать статические поля и возвращать на них ссылку или указатель
источник

c

codingteam@cjr in codingteam
Minoru
а в D есть что-то готовое на этот счёт?
источник

c

codingteam@cjr in codingteam
Minoru
чтобы можно было объявить поле и привязать к нему инициализатор
источник

c

codingteam@cjr in codingteam
Minoru
я, конечно же, спрашиваю не просто так, а потому что в Rust есть https://doc.rust-lang.org/stable/std/sync/struct.Once.html
источник

c

codingteam@cjr in codingteam
Minoru
мне интересно, смогли ли в D сделать ещё красивее, чтобы инициализатор передавался прямо в конструктор поля
источник