gpt4 book ai didi

Smalltalk 指代尚未定义的类

转载 作者:行者123 更新时间:2023-12-03 23:41:54 24 4
gpt4 key购买 nike

我希望能够编写这样的代码:

MyObject subclass: #A instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'CAT1'.
A subclass: #B instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'CAT1'.
无需单独运行每一行。
当我尝试这样做时,我收到一条错误消息 A未声明,即使它会在到达第二行时声明。
有没有办法克服这个问题?

最佳答案

对于类的延迟查找,您必须在全局字典中查找类,名为 Smalltalk (尝试检查和浏览它)。您可以使用访问器,如 classNamed:at:在编译要计算的整个表达式时查找可能尚未定义的名称。

MyObject subclass: #A instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'CAT1'.
(Smalltalk classNamed: #A) subclass: #B instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'CAT1'.

关于Smalltalk 指代尚未定义的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65289085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com