上回说到 Rank 这个 Ruby 世界最广泛使用的构建工具在 Windows 下有大bug,根本不能运行。Python的scons太慢、自动得过了头,造成定制起来很麻烦.....
最终,我找到了一个叫 Rant 的Ruby构建工具,用起来几乎与 Rank一样,而且特性更多,最重要的是能在 windows 下面正常运行。因此我强烈推荐各位D语言的粉丝使用Rant作为软件构建工具,放弃那些不成熟的IDE。用Rant的好处是还能顺带学习一下Ruby语言,对于像我一样的Ruby&&D双料菜鸟,这是不可多得的学习机会。
如果没有Ruby,请先下载安装 Ruby。 然后在控制台中 ...
在一个日文网站上发现的通用 Rakefile for GDCrequire "rake/clean"NAME = "hogehoge" # プロジェクト名 ##可执行文件名PROG = "#{NAME}"PROG_DEBUG = "#{NAME}_debug"SRC = "src"SRCS = FileList["./src/**/*.d"]OBJS = SRCS.ext "o"OBJS_DEB ...
在正文之前,先佩服一下伟大的GFW——又把 blogspot.com 的二级域名给封了。
如果你和我一样经常为了测试D语言的某个特性而写一些小程序来验证想法,而且恰好也使用 VIM 的话,那么本文就是为你准备的。
首先,VIM7 中自带的D语言语法文件版本很老,请替换为 http://www.vim.org/scripts/script.php?script_id=379 这个支持0.178的。
下面的代码是 VIM 的DMD编译器支持,将其放入 ~/.vim/complier/dmd.vim (for unix-like, Windows 为 $VIMRUN ...
Firefox 的同门兄弟 Thunderbird 是一款优秀的电子邮件客户端。可是我在使用中却发现这家伙竟然使用 Base64 编码来加密敏感数据,真是服了它了。
要想揪出 Thunderbird 的小辫子,请 follow 以下步骤:
请搜索 \Documents and Settings\*\Application Data\Thunderbird\Profiles\ 目录下一个叫 signons.txt 的文件,秘密就藏在里面。
打开 signons.txt 你会看到 ~***= 的内容,其中 *** 就是被 base64编码后的字符串。要解码可以 ...
D的文档里说 struct/class 的 .tupleof 属性可以把一个 struct 的所有成员变量转换为一个 tuple。那么反过来让 tuple 作为 struct 的成员可不可以呢?答案是可以,因为 tuple相当一个可以存放不同元素类型的静态数组,我们只要在 struct 中声明一个 Tuple 实例就能达到目的:
D 代码
struct Foo(Tuple...)
{
Tuple fields; & ...
Fedora6 越用越慢,最不靠谱的是自动升级以后竟然用不了我自己装的 Firefox2,在实在是忍无可忍的情况下闪过了一个换 Ubuntu 6.10 的念头,结果我就用上了 ubuntu.....
可是 6.10 终究不是最新版,终于一狠心一跺脚把 6.10 升级成 7.04,下面是本免费小白鼠的亲身体验:
升级很顺利,直接 apt-get update & apt-get dist-upgrade 就搞定了,基本的设置没有变化,不过我刚配置好的字体又回去了。
感觉 gnome 的速度上来了一点,不过感觉还是没刚装好的 fedora6 快。Firefox的速 ...
cpp 代码
ubyte a[3] = [2, 3, 4]; //OK!
void main()
{
ubyte b[3] = [2, 3, 4]; //编译错误
}
一只很大的 ...
boost.variant 是安全、范型、基于栈的可识别联合容器,下面的代码是其在D语言中的等价实现。借助D语言强大的元编程能力,其与C++的版本相比,代码清晰,对类型安全有更大的保证。
boost.variant 文档:http://www.boost.org/doc/html/variant.html
boost.any 和 boost.variant 的区别与比较: http://www.boost.org/doc/html/variant/misc.html#variant.versus-any
cpp 代码
// ...
D语言的 TypeTuple既然可以按数组的方式操作,我觉得应该可以对其增加更多的算法,下面的 RemoveIf就是一个例子:
1 module dust.meta.tuple; 2 3 import std.typetuple; 4 5 6 template RemoveIf(alias PredTempl, TList...) 7 { 8 static if (TList.length == 0) 9 alias TList RemoveIf;10 else static if (PredTempl!(TList[0]))11 ...
- 浏览: 105133 次
- 性别:

- 来自: 昆明

- 详细资料
搜索本博客
我的相册
Screenshot
共 1 张
共 1 张
最近加入圈子
最新评论
-
出色的开源项目管理软件— ...
我也是前几天刚刚从trac换到redmine,感觉好多了,trac有的redmi ...
-- by danielking -
转贴:鲁迅未收入全集的文 ...
借问酒家何处有,牧童遥指杏花村
-- by hqs7636 -
Range Coding 的 D 实现
引用oldrev 2008-01-12LZMA SDK 只是一个 LZMA 算法 ...
-- by oldrev -
D 静态数组初始化大bug
看看日期好伐?
-- by oldrev -
D新闻组里的天才代码
没看过产生的汇编代码,测试了是可行的。如果用宏来实现就完美了
-- by oldrev






评论排行榜