Comments 8
В C++17 есть предложение что-то подобное сделать: unified call syntax. Мне нравится, но в каком состоянии дискуссия по данному предложению, я не в курсе.
0
auto output = map!((a) => a.foo())(vars);
Это можно записать проще:
auto output = map!q{a.foo}(vars);
В данном случае контейнер можно было бы исправить и проще, сделав контейнер подтипом своего члена:
class Container(T) {
this() {
vars = [42, 15, 8];
}
alias vars this;
T[] vars;
}
0
Вещь однозначно хорошая, но мне кажется, что всё-таки лучше структурируется код, если делать дополнительные методы через Extension'ы, как в C#, Rust, Swift.
+1
[зануда]
Поверьте — Си программист такое вам точно не напишет ;)
[/зануда]
Спросите любого программиста на Си, как бы он её вызвал
auto b = new A;
Поверьте — Си программист такое вам точно не напишет ;)
[/зануда]
+3
Вот только речь идёт о вызове функции, а не об объявлении)
0
Sign up to leave a comment.
UFCS в языке программирования D