318_common lisp中的array以及vector

完整的emacs and lisp的學習集合整理如下:

https://github.com/GreyZhang/g_lisp

    繼續emacs以及lisp的學習,今天來學習一下array以及vector兩個數據類型。其中,array可以看做是基礎,而vector是一種特殊的array。Vector的特殊點在於什麼地方呢?vector的特殊點是要求array的維度必須爲1。相關的異同點,其實可以通過一組簡單的測試來看得出。

    上面,創建了5個變量對象,存儲的都是array。其中,*var1*和*var2*的方式是等同的,這裏一起列了出來是爲了能夠看得出這裏存在一種縮寫的方式。

    從REPL中可以看得到5個變量的值,可以對等理解單維度以及多維度的array的創建。而arrayp函數的功能是判斷一個對象是否是array,類似的,vectorp的功能是判斷一個對象是否是vector。

    通過在REPL中判斷不同對象的類型可以印證我們前面的結論,vector是特殊的,也就是維度必須爲1的array。

    以上,算是對common lisp中的array以及vector的異同點做的一個簡單的梳理以及對比說明。

完整的emacs and lisp的學習集合整理如下:

https://github.com/GreyZhang/g_lisp

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章