User defined types: Problems with ref
Chris
wendlec at tcd.ie
Thu Jan 23 07:24:00 PST 2014
Here's what I'm trying to do.
struct Element(T) {
T x;
T y;
public void setX(T value) {
x = value;
}
// More fancy functions ...
}
I store Element(s) in an array and want to pass each one by
reference, which does not work.
class Tree {
Element!string[] elements;
public ref auto createElement(string name) {
elements ~= Element!string(name);
return elements[$-1];
}
}
in main:
auto tag = Element!string("first");
The elements in Tree.elements and the ones in main are not the
same, instead I obtain a copy of each.
How can I make them refer to the same Elements? If I have to add
a .ptr property to Element, how do I do that? Is that possible at
all or did I shoot myself in the foot with the template?
More information about the Digitalmars-d-learn
mailing list