Am Mon, 08 Feb 2010 12:19:12 +0100
schrieb Jacob Carlborg <[email protected]>:
> struct String
> {
> char[] data;
> }
>
> void main ()
> {
> auto foo = String("foo");
> auto bar = String("foo".dup);
>
> assert(bar == foo);
> }
>
> Why isn't == used to compare the struct members in the code above? I
> mean, if I compare the structs with == it could also use == to
> compare the members. If I use "is" to compare the structs it could
> use "is" to compare them members.
How should == be used for this struct?
struct Foo
{
union
{
char[] dataA;
long dataB;
}
}
Foo a,b;
a.dataA = "abc";
b.dataA = "abc".dup;
Now a.dataA == b.dataA, but a.dataB != b.dataB.