两个单词CREATE和VARIABLE有什么区别?
例如,在此代码中:
VARIABLE MYARRAY 2 CELLS ALLOT
170 340 220 MYARRAY ! MYARRAY 1 CELLS + ! MYARRAY 2 CELLS + !
CREATE MYARRAY 220 , 340 , 170 ,
在这两种情况下,结果在内存中是相同的。这样对吗?我什么时候应该用一个代替另一个?为什么?
答案 0 :(得分:2)
对,VARIABLE
分配一个内存单元。此外,标准程序可能不会假设它可以
在变量后添加数据,请参阅Contiguous regions。
CREATE
本身不会分配任何内存,而是启动一个可以扩展的连续区域。而且,它是标准程序与DOES>
结合使用的唯一单词。
差异可能主要是风格(除非您使用DOES>
或非常关注标准)。读者更清楚VARIABLE
是一个简单的变量。 CREATE
可以是任何类型的数据结构。
如果您想要初始化变量,可以使用VARIABLE FOO BAR FOO !
或CREATE FOO BAR ,
。我没有看到任何一种替代品在很大程度上优先于另一种。