Dotmars 实例之:容器、迭代器与算法框架
Dotmars 实例之:容器、迭代器与算法框架这几天 Mr. Bright 老是不放新版本,圈子里太冷清了,我来发篇程序凑个数。
这是一个类似 C++ STL 的容器、迭代器和算法框架,迭代器的设计参考了 C++ boost 库中的"new-style" 迭代器,把迭代器的遍历和读写操作分开,内置数组处理参考了 qiezi 的文章: 仿STL的vector,写了一组array操作方法。容器方法的命令没有遵循 STL 的风格,而是采用 .Net 范型容器的名称。
借助于 D 威力强大的模板和模板混入,代码虽然大量用到了模板,但是十分地简短易读。
目前仅仅实现的部分包括:
[*]双向列表容器
[*]find & copy 算法(没有模板特化的优化)
[*]内置一维数组的迭代器
[*]一个AOP模式的容器操作符重载
废话少说,看看范例程序展现的威力:
<div class="code_title">D 代码
页:
[1]