zoukankan      html  css  js  c++  java
  • lisp : set 与setq 函数

    在Lisp中,如果我们希望对一个变量赋值,可以使用set函数,用法如下:

    (set ‘my-value "my string")  

    上面的代码是对变量my-value进行赋值,值是"my String"。注意其中的'my-value前面是有一个单引号的。

    我们知道,在Lisp中,'my-value其实是(quote my-value)的简写,所以上面的set函数代码也可以写成这样:

    (set (quote my-value) "my string")  


    不过,因为set函数使用的次数很多,每次都要使用quote或者在变量名前加一个单引号比较麻烦,于是发展了setq函数,setq中的q字母就是代表quote的意思,使用setq函数就可以这样写了:

    (setq my-value "my string") 

    如果只是这样使用,可以认为set和setq是没有差别的,只是格式简化了。

    但是,事实上setq比set函数要高级一些,setq函数还可以同时对多个变量进行赋值,像下面这样:

    (setq my-value1 "my string 1" my-value2 "my string 2") 

    上面的代码同时对变量my-value1和my-value2进行赋值。而set函数就不能这样使用了。


    ===================
    天行健,君子以自强不息
    地势坤,君子以厚德载物
    ===================
  • 相关阅读:
    安装MySQL5.7.19 网上的文章参考 并做了部分修改
    从hadoop一路配置到spark
    java面试问题收集(2)
    JAVA的 IO NIO AIO笔记
    Shiro
    Spring注解使用注意点
    oracle RAC
    spark随笔
    Storm知识点笔记
    真机调试手机程序,电脑插上手机数据线虚拟机中的系统就死掉
  • 原文地址:https://www.cnblogs.com/halberd-lee/p/8583770.html
Copyright © 2011-2022 走看看