xxxxxxxxxx
import core.stdc.stdio;
import core.stdc.stdlib;
struct Box {
this(this);
auto move() {
auto newObject = Box(this);
return newObject;
}
~this() {
printf("Destroy pointer with id: %d in address %d\n", _id, &this);
}
auto id() {
return _id;
}
private:
int _id = 1;
this(ref Box source) {
this._id = source._id + 1;
}
}
extern(C) void main()
{
auto box = Box();
auto newbox = box.move;
printf("box id is %d\n", box.id);
printf("newbox id is %d\n", newbox.id);
printf("Fin App\n");
}