如何从头开始制作Squeak课程?

我想在 Squeak 中制作一个简单的程序来计算几个点之间的距离,但我不想使用已经定义的类 Point。到目前为止,我有以下几点:

x 和 y 的 getter 和 setter 方法已自动生成:

x ^ x

x: anObject x := anObject.

我编程的距离方法如下:

distance:aPoint
    "comment stating purpose of message"

    |dx dy |
    dx:=aPoint x - x.
    dy:=aPoint y - y.
    ^ (dx*dx+dy*dy) sqrt.

现在我打开一个工作区并尝试打印出结果:

obj1:=PointS new.
obj1 x:3 y:4.
obj2:=PointS new.
obj2 x:5 y:6.
d:=obj1 distance obj2
UIManager default inform: 'Converted amount: ',d.

但我得到的结果如下:

我错过了什么?

回答

尝试替换以下内容:

obj1 x:3 y:4.

有了这个:

obj1 x:3; y:4.

基本上,您正在发送消息,#x:y:但您没有具有该名称的方法。相反,您有一个方法#x:和另一个方法#y:,因此您需要对同一个对象进行两次单独的调用(使用级联运算符 ( #;)完成)。


以上是如何从头开始制作Squeak课程?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>