首页 > 其他 > 详细

newLISP中的字典类型

时间:2014-04-13 06:04:04      阅读:226      评论:0      收藏:0      [点我收藏+]

在之前一篇在newlisp中使用table-driven模式曾经用过这个类型做table-driver模式。

这里将专门描述Tree如何使用。

创建字典

首先Tree是一个namesapce,如果想创建一个字典保存key/value结构,需要如下使用:

(new Tree ‘MyTable) 
(MyTable "/home/a.cc" "123:45") 
(MyTable "/home/b.cc" "123:46") 
(MyTable "/home/c.cc" "123:47") 
(MyTable "/home/d.cc" "123:48") 
(MyTable "/home/e.cc" "123:49") 

这样,其实是创建了一个名为MyTable的context,里面保存了很多key/value的组合。

查询字典

读取的时候也很简单:

(MyTable "/home/a.cc")
"123:45"


保存字典

(save "d2.lsp" ‘MyTable)

这样MyTable里的所有数据都被保存到d2.lsp文件中,现在打开看一下:

(context ‘MyTable)

(set ‘_/home/a.cc "123:45")

(set ‘_/home/b.cc "123:46")

(set ‘_/home/c.cc "123:47")

(set ‘_/home/d.cc "123:48")

(set ‘_/home/e.cc "123:49")


(context MAIN)

原来居然是很多的MyTable 中的变量,所以这其实是一个模拟的字典。目前我还不清楚其算法复杂度是多少?


读取字典文件

就是通用做法

(load "d2.lsp")
MAIN

现在可以使用了。




newLISP中的字典类型,布布扣,bubuko.com

newLISP中的字典类型

原文:http://blog.csdn.net/csfreebird/article/details/23541989

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!