[疑难] std.container
hqs7636
2010-10-05
跟range一结合完全不认识了
怎么操作树或链表? Colorful老大的数据结构还在维护吗?d2新版本还能编译吗? 模板跟range一结合看着像天书 phobos库实在是不好,一是实用内容不多,二是完全颠覆了使用习惯,难受,不知道大家怎么看? 这可能也是d一直流行不起来的根源,好好的语言搭配一个糟糕的库,照此下去,d估计是没戏了。 大师不能平民化也是一种罪过,大师的智慧应该在大众化的路子上体现出来。 谁给翻译一下,我贴到NG上去 |
|
shawind
2010-10-05
tango也好不到哪去,还是只用std.c得了。反正d语言本身的特性就很不错。
|
|
Colorful
2010-10-06
Phobos 里的算法和容器库就是 STL 的翻版。
range 是胶水,它来连接算法和容器。 你把 range 想象成 STL 的 5 种迭代器就行了。它实际上就是这 5 种迭代器的改良。 |
|
hqs7636
2010-10-06
Colorful 写道 Phobos 里的算法和容器库就是 STL 的翻版。
range 是胶水,它来连接算法和容器。 你把 range 想象成 STL 的 5 种迭代器就行了。它实际上就是这 5 种迭代器的改良。 昨天翻了一下容器库的源码,原来还只是个框架,绝大多数还没有具体实现,树什么的框架都没有。 别的语言俺基本是略过模板的,毕竟是后加的,不用也行,d就不行了,必须用它,模板,range单看也还凑合,合一块就晕了。我觉得其实不用在声明里体现出来吧,隐藏在实现里就好了,不过d2的range已经是独立的数据结构了,这个弯有点转大了。 还是先用dcollections吧,人家想加进来,A大就不搭理人家,其实提供两个版本也挺好,对不习惯 std.container 的可以用 dcollections,算法库也应该提供一个非range版本的,dsource不知道有没有可以替代他的,好像只有针对数学的算法库 |
|
stelut
2011-02-25
cpp的迭代器失败之处就在于不是range,但没办法回头了,d迭代器一开始就应该是range,或许语法上可以改进些
|