On Sunday, 9 August 2015 at 15:37:23 UTC, Binarydepth wrote:
So I should use the REF like this ?
import std.stdio : writeln;
void main() {
immutable a=5;
int[a] Arr;
foreach(num; 0..a) {
Arr[num] = num;
}
foreach(num, ref ele; Arr) {
writeln(Arr[ele]+1);//Using the REF
}
}
The reference v is to the array member in this case, rather than
making a copy. In the last loop c is a copy. No big deal for
this case of int Arr members, but if Arr was made up of struct
members, you might not want to be making copies.
The i+3 initialization is just so you can see that v is the Arr
member (not the index) in the other loops.
import std.stdio : writeln;
void main() {
immutable a=5;
int[a] Arr;
foreach(i, ref v; Arr) {
v = i+3;
}
foreach( ref v; Arr) {
writeln(v);
}
foreach( c; Arr) {
writeln(c);
}
}