declaration with typedef
Stanislav Blinov
blinov at loniir.ru
Tue Dec 28 10:20:49 PST 2010
28.12.2010 20:42, David Nadlinger пишет:
> On 12/28/10 2:09 AM, Stanislav Blinov wrote:
>> I don't think I got what David meant with it either. Assigning instances
>> of the same type is perfectly valid as long as you do not define some
>> very peculiar opAssign.
>
> The point here is that person1 and person2 are not instances of the
> same type, try compiling the following snippet:
>
> ---
> struct Human {
> string name;
> int age;
> }
>
> void main() {
> Human person1;
>
> typedef Human Mankind;
> Mankind person2 = person1;
> }
> ---
>
Oh, right, I missed that one, sorry.
> This might not be what Hamad wanted to know when he asked »but why
> that code works«, but I could think of no other reason why the snipped
> he posted should fail to compile.
>
Yes, the original snippet should compile fine because typedef'd type
isn't actually used in any way except for accessing fields, which of
course have built-in types.
More information about the Digitalmars-d-learn
mailing list