甘草 的个人资料心寄笔端 附庸风雅照片日志列表 工具 帮助

日志


开始D Programming Language之旅

这几天一直试验D Programming Language的编译器, 昨晚终于成功的编译代码了, 于是就写了我的第一个D程序,.
HelloWorld就不算了, 随即我试验了D的模板威力, 简单地写了一个不健全的stack类模板. 代码如下, 希望给初学D的朋友一点帮助:
import std.stdio;
template element(T)    //其实我还不知道这个element标识的意义呢.
{
 class stack
 {
 public:
 alias T type;
 this()
 {
  p.length = size;
  printf("stack size:%d", p.length);
 }
 
 void Push(T v)
 {
  if (index < size)
   p[index++] = v;  
  else
  {
   size += 255;
   p.length = size;
   p[index++] = v;
  }
 }
 
 T Pop()
 {
  return p[--index];
 }
  
 T[] p;
 int index = 0;
 int size = 255;
 }

}

void main()
{
 
 alias element!(int).stack stackint;
 alias stackint.type type;
 
 stackint n = new stackint;
 n.Push(6);
 n.Push(7);
 
 n.Pop();
 type v = n.Pop();
 
 printf("%d", v);
 }

我发现D还支持元编程,这一点,弄得我不知道是喜是忧了.

目前D的资料非常少,特别是国内.以后我有空就会写些关于D的小文章,发到上面来,希望能帮助传播D Programming Language.
给出几个重要的URL吧,都是关于D的:
http://blog.csdn.net/uframer/category/65616.aspx?PageNumber=4 (有可能是目前国内唯一的关于D的资料网址了.)