应该在TCL中使用数组和/或词典

时间:2017-02-16 18:30:40

标签: arrays dictionary tcl

从Tcl 8.5开始,我们有字典和数组。现在,每个人都知道词典的优点。

除了环境数组之外,数组是否有优势?

有没有人发现阵列的优势,假设一个人不需要使用早于8.5的TCL?

2 个答案:

答案 0 :(得分:3)

您可以跟踪数组变量,但无法跟踪字典值。

除此之外,获取数组值的语法更简洁。

参考文献:array dict

答案 1 :(得分:2)

数组的巨大语义优势是可以跟踪数组的元素;它们实际上是变量的集合。这也意味着您可以使用带有vwait等命令的元素,并让Tk小部件使用它们来存储模型,依此类推。 (所有这些都取决于痕迹的工作。)

字典的巨大语义优势是你可以便宜地将它们从一个上下文传递给另一个上下文;它们确实是值。这使得它们可以用作过程的参数,或者从一个既简单又便宜的过程中返回它。

从语法上讲,数组更好。