所以,我正在尝试学习Lisp,我在定义String是什么时遇到了一个问题.
我正在阅读Paul Graham的ANSI Common Lisp,在本书中它指出String是一个向量或一维数组.
所以,我创建一个String:
(defvar *my-string* "abc")
然后我可以这样访问my-string的第一个值:
(aref *my-string* 0)
但如果它是一个向量,为什么我不能这样访问该元素:
(svref *my-string* 0)
我的意思是,当我以这种方式创建矢量时:
(defvar my-vec (make-array 4 :initial-element 1))
我可以使用svref访问第一个元素:
(svref my-vec 0) ; returns 1
“值”abc“不属于类型(SIMPLE-ARRAY T(*)).”
解决方法
原文地址:https://www.jb51.cc/java/127660.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。