Getting RefCounted to work with classes
Bienlein via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Mon Aug 25 14:14:02 PDT 2014
Hello,
the code below compiles and runs fine. However, when I change
Payload from struct to class I get compiler errors:
Error 1 Error: template instance
std.typecons.RefCounted!(Payload,
cast(RefCountedAutoInitialize)1) does not match template
declaration RefCounted(T, RefCountedAutoInitialize autoInit =
RefCountedAutoInitialize.yes) if (!is(T ==
class)) C:\Users\Nutzer\Windows Ordner\Documents\Visual Studio
2013\Projects\RefCountedScratch\RefCountedScratch\main.d 26
I tried many things, but nothing did it. Any help appreciated :-).
Thanks, Bienlein
import std.stdio;
import std.typecons;
struct Payload
{
private int num = 0;
this(int i)
{
num = i;
writefln("Payload's constructor called");
}
~this()
{
writefln("Payload's destructor called");
}
}
int main(string[] argv)
{
alias RefCounted!(Payload, RefCountedAutoInitialize.yes) Data;
int bar = 12;
Data data = Data(bar);
return 0;
}
More information about the Digitalmars-d-learn
mailing list