别名本是有用的,用来简化书写

struct S
{
   int x;
   void foo() {}
}

struct T
{
   S s;
   void foo2() {};
   int y;
   alias s this;
}
import core.stdc.stdio;
extern(C):
void main()
{//别名 本 其实是简化构的书写.
    T t;
    t.foo(); //->t.s.foo();
    t.x = 5; //->t.s.x = 5;
    S s = t; //->S s = t.s;
    printf("%i %i",S.sizeof,T.sizeof);
}

特别是在多个构有相同子构的情况下,此时子构类似插件子构一样.其实,这是有用的.

posted @ 2021-03-16 18:35  zjh6  阅读(20)  评论(0)    收藏  举报  来源