smalltalk吱吱声错误:“quot;“未定义对象的实例不可索引”;

smalltalk吱吱声错误:“quot;“未定义对象的实例不可索引”;,smalltalk,squeak,Smalltalk,Squeak,我在理解squeak程序中的错误时遇到了很多问题,无法修复和调试它。就像在这种情况下: 我在squeak中使用smalltalk语言编写了以下代码: initilize super initialize. path := OrderedCollection new. - - - - - 这是我在工作区中编写的代码: myMorph := TestMorph new openInWorld. 但我得到了我写的错误,关于“步长”方法中“大小”的问题 有人看到问题了吗?当您收到一条关于Undef

我在理解squeak程序中的错误时遇到了很多问题,无法修复和调试它。就像在这种情况下:

我在squeak中使用smalltalk语言编写了以下代码:

initilize

super initialize.
path := OrderedCollection new.
-

-

-

-

-

这是我在工作区中编写的代码:

myMorph := TestMorph new openInWorld.
但我得到了我写的错误,关于“步长”方法中“大小”的问题
有人看到问题了吗?

当您收到一条关于
UndefinedObject
的错误消息时,通常意味着某个变量没有正确初始化,它的值为
nil

错误是您拼错了
initialize


您编写了
initilize
。创建对象时不调用此方法,因此,
path
实例变量被设为未定义(nil)。

当您收到关于
UndefinedObject
的错误消息时,通常意味着某些变量未正确初始化,它的值为
nil

错误是您拼错了
initialize


您编写了
initilize
。创建对象时不调用此方法,因此
path
实例变量未定义(nil)。

错误意味着
#step
方法中的
path
变量为
nil
。但我看不出您的代码中有问题。要么你再做点什么,你就需要有人更敏锐地发现问题:)@Uko是对的,我在这里也没有发现错误。错误意味着你的
#step
方法中的
path
变量是
nil
。但我看不出您的代码中有问题。要么你再做点什么,我们需要有人让你更敏锐地发现问题:)@Uko是对的,我在这里也没有发现错误。
handlesMouseDown: evt
^true.
mouseDown: evt

self position: self position + (10@0).
startAnimation

    path reset.
    0 to: 9 do: [:i | path add: self position +(0@(10*i))].
    path := path, path reverse.
    self startStepping.
step

path size > 0 ifTrue: [self position: path removeFirst].
myMorph := TestMorph new openInWorld.