9.2 变量类型标注:declare 与 typeset
Last updated
Was this helpful?
Last updated
Was this helpful?
declare
和 typeset
是完全相同的命令,其被用于修改变量的属性。相比起一部分编程语言来说,这种修改属于非常弱的类型标注方式。declare
命令只有在 Bash version 2 及更高版本才能使用,而 typeset
命令可以在 ksh 脚本中运行。
declare
/typeset
命令选项(declare -r var1
与 readonly var1
的作用相同)
该选项约等于 C 语言中的类型限定符 const
。任何尝试修改只读变量的行为都会导致脚本出错。
如果没有在 declare -f
后带上任何参数,该语句将会列出在脚本中已经定义的所有函数。
而 declare -f function_name
则仅仅列出名为 function_name
的函数。
该语句声明了变量 var3
可以导出到该变量所属脚本之外的 shell 环境中。
declare
命令允许在设置变量属性的同时给变量赋值。
declare
命令标注变量类型但是...
被视为整型的变量无需命令 或是 即可进行数学运算。
变量 indices
会被视作 。
使用内建命令 declare
还可以限制变量的 。
在本书中,变量类型标注(typing)是指指定变量类型并限制其属性。例如一个变量被 declared
或是 typed
命令声明为整型,则该变量不再适用于各种 。