И
Size: a a a
И
Т
И
И
Т
МВ
Т
МВ
И
И
МВ
void main() {
alias func = void delegate();
func[] cbs;
foreach (int k; 0..3) {
cbs ~= () => k.writeln;
}
foreach(d; cbs) d();
} выводит 2 2 2, а struct TestIter {
int opApply(scope int delegate(int) dg) {
for (int k=1; k<=3; ++k) {
dg(k);
}
return 1;
}
}
void main() {
alias func = void delegate();
func[] cbs;
foreach (int k; TestIter()) {
cbs ~= () => k.writeln;
}
foreach(d; cbs) d();
} выводит 0 1 2, говорит о том, что что-то пошло не такИ
И
МВ
И
МВ
Т
И