《D1.0代码模拟 __traits(hasMember, ...)》的相关内容
相关讨论
lambda之路...
DMD最近的版本号加入了闭包,感觉非常有用,虽然有些背后动作,不过我是实用派不介意这个。玩的时候忽然想到为什么没有lambda呢?AST还没影,不过可以利用D强大的模板可以使用字符串来先模拟一下。
我假想的语法是这样的:
int[] arr = [1,2,3];
int[] arr1 = arr.map(lambda!("int x -> x * x"));
上面执行的arr1结果将 ...
by qiezi 2007-11-09 浏览 (2687) 回复 (15) 关键字:
头文字D,Spider
贴一段我用D写的Spider的代码。
越来越爱D了。
import std.stdio;
import std.string;
import std.conv;
import std.socket;
import std.socketstream;
import std.stream;
import std.regexp;
import std.thread;
import ...
by fxsjy 2007-10-12 浏览 (997) 回复 (0) 关键字: 爬虫
D语言动态创建对象-D最新功能
我认为这是D提供的又一个重量级的功能.闲言少叙,代码说话!
保存为cre.d,使用dmd cre.d编译.
module cre;
import std.stdio;
interface IPrinter
{
void print();
void init(char[] a);
}
class foo :IPrinter
{
void prin ...
by ideage 2007-03-27 浏览 (6400) 回复 (11) 关键字: d最新功能 动态创建 插件 ioc
D语言与tpl之编译期动作
最近D语言发布了1.0版,这是一个由编译器开发者所设计的编译语言,语法类似C++, 但是针对C++的弊病作了大量修正,并增加了很多现代特征,其中还是有一些新意在其中的。http://www.digitalmars.com/d/overview.html 我对其比较感兴趣的部分是D语言明确提出的编译期运行的概念。虽然C++让大众了解了meta programming技术,很 ...
by canonical 2007-03-04 浏览 (7912) 回复 (21) 关键字: 设计理论
相关博客
Traits 特征 2.014
6.14 翻译
(d语言的反射,刚刚翻译了2/3了,浏览器异常退出,气死我。 6.14)
重来了
1.028里没有,谁能翻译一下
请参考:
C++ Traits http://www.cnblogs.com/hush/archive/2004/03/10/2717.html
C++ Type traits http://jjhou.csdn.net/programmer-6-type-tr ...
by hqs7636 2008-06-07 浏览 (112) 回复 (4) 关键字:
mixin 模拟多继承
D1.0 代码
/** TupleMixin 演示程序, DMD2.007/GDC0.24 测试通过
Written in the D programming language 1.0
作者: oldrev
Copyrights: BSD
*/
import std.stdio;
...
by oldrev 2007-11-10 浏览 (2497) 回复 (1) 关键字: D语言 DMD 元编程 模板
模板混入 2.014
(本章无版本差异)
一个 模板混入 指的是从一个 模版声明 的过程体内 提取一个任意的声明 集合,并将它们插
入到当前的上下文中。
模板混入:
mixin 模板标识符 ;
mixin 模板标识符 混入标识符 ;
mixin 模板标识符 !(模板参数列表 ) ;
mixin 模板标识符 !(模板参数列表 ) 混入标识符 ;
混入标识符:
标识符
模版混入 可以出现在模块、类、结构、联合的声明列 ...
by hqs7636 2008-06-05 浏览 (45) 回复 (0) 关键字:
基于 D 2.0 编译时反射的单元测试框架
一个模仿 Ruby Test::Unit 的 Quick & Dirty 单元测试框架,托 __traits 的福,看起来已经有那么点意思了。提取行号在目前还没法实现,估计等 macro 出来就能解决这个问题。
SVN里的最新版在下面的链接处:
dotmars.googlecode.com/svn/trunk/sandbox/2.0/test.d
D2.0 代码
...
by oldrev 2007-07-27 浏览 (1536) 回复 (3) 关键字: D2.0 D语
相关圈子讨论
回复“mixin模拟多继承”
论坛回复坏掉了,先回复在这。批评一下,经常这样可不行咯,这应该算是比较大的运维事故。
必须mixin模板?这是一个限制呀,通常大家都是写成类的,在类上面多继承。。。
我好像没看到程序调用到ctor和dtor,mixin模板本身是可以直接用this/~this的,它会按照mixin的顺序来调用,不需要自己实现ctor/dtor,D里面早就是用mixin来代替多继承了。
by qiezi 2007-11-11 浏览 (263) 回复 (8)
元编程应用之:编译期 DLL 包装类
大家好!我刚加入,感觉这里是唯一的中文D语言论坛,真不容易啊。
发一个我写的元编程例子:
// dll.d
// A simple DLL wrapper
// Author: Oldrev (wstring#AT#gmail.com)
import std.c.windows.windows;
import std.stdio;
import std.traits;
imp ...
by oldrev 2007-02-24 浏览 (1515) 回复 (10)
关于模板混入同名声明被外部覆盖的问题
D模板混入有这样的规定:
Mixin Scope
The declarations in a mixin are 'imported' into the surrounding scope. If the name of a declaration in a mixin is the same as a declaration in the surrounding scope, the surro ...
by tuja 2007-09-14 浏览 (195) 回复 (2)
模板中的variadic 参数类型自动推导的问题
如下面代码中,没有调用模板时,编译能通过
template test(T, R)
{
void test(T t, R r...)
{
foreach(v; r)
Stdout(v).newline;
}
}
如果这样调用:
test("a", "b","C");
编译时就会出错,说参数个数不一致。
而用这样 ...
by tuja 2007-09-30 浏览 (232) 回复 (3)
相关新闻
推荐Steve Yegge:Rhino on Rails在服务器端JVM中运行JavaScript
Steve Yegge在google I/O大会上发表了演讲:Rhino on Rails -- Server-side JavaScript on the Java Virtual Machine。
使用Rhino能够用JavaScript完成Java在server端完成的所有工作!
什么是Rhino?
1。用JavaScript实现Java JavaScript implemente ...
by QQbyte 2008-06-17 浏览 (1123) 回复 (11) 关键字:
Struts2 将支持REST
在Struts2的主要作者之一的Don Brown的博客上面,他谈到了Struts2将要支持的功能,其中最令人振奋的就是Struts2将要支持REST。Struts2将通过插件的机制提供完备的REST支持,例如支持如下URL格式: /foo/1/bar/2等等。除此之外,Struts2还将支持以下功能:
1、增强的页面缓存机制,类似于现在RoR的页面片断缓存,可以生成静态页面片断进行缓存
2、 ...
by robbin 2007-11-20 浏览 (1651) 回复 (5) 关键字: struts2.0 rest
推荐知识库条目
Comming soon

