創建打印方法堆棧我有一類稱爲「AStack」在Smalltalk
Object subclass: #AStack
instanceVariableNames: 'elements'
...
它包含了擁有它的「元素對象」
initialize
super initialize.
elements := OrderedCollection new
它的成員類推送OrderedCollection對象和流行,分別爲:
push: anObject
self elements addFirst: anObject
pop
^self elements removeFirst
我想寫一個打印方法,使用timesRepeat打印c堆棧的內容以及同時清空。它調用每個'元素'的子類打印方法(print^self name)並使用'Transcript'在屏幕上輸出它。
print
self size timesRepeat: [ Transcript show: elements print. self pop ]
工作區碼:
| o1 o2 stk |
o1 := Object new.
o1 name: 'object1'.
o2 := Object new.
o2 name: 'object2'.
stk := AStack new.
stk push: o1.
stk push: o2.
stk print.
在運行上面的代碼,我得到內菲羅,說MessageNotUnderstood錯誤:AStack >>元素。
如果您需要更多代碼,請不要猶豫。
請問: 「打印 自我大小timesRepeat:成績單顯示:自彈出打印]」 就夠了? – BDillan 2014-10-04 17:05:17