想象一下以下 REBOL 代码:
foo: context [bar: 3]
我现在有一个上下文foo
其中'bar
被定义为。如何动态地将新单词注入到此上下文中?是否可以?
我试过了:
set/any in foo 'baz 3
但这不起作用,因为表达式in foo 'baz
失败是因为没有单词'baz
定义在foo
语境。
我应该补充一点,我意识到做到这一点的一种方法如下:
foo-prototype: [bar: 3]
foo: context foo-prototype
foo: context head append foo-prototype [baz: 3]
但如果您无权访问怎么办foo
的原型块?
您可以通过使用现有对象作为原型来创建新对象来实现相同的目的。
>> foo: make object! [bar: 3]
>> foo: make foo [baz: 3]
>> probe foo
make object! [
bar: 3
baz: 3
]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)