初心者の質問で申し訳ありませんが、長い間試したにもかかわらず、これを理解できませんでした。
Cincom Visualworks の NewClass 機能を使用してマトリックス クラスを作成しました。
Smalltalk.Core defineClass: #Matrix
superclass: #{Core.Object}
indexedType: #none
private: false
instanceVariableNames: 'rowCount columnCount cellValues '
classInstanceVariableNames: ''
imports: ''
category: ''
次のクラス メソッドを追加しました。
withRowCount: rowCount withColumnCount: columnCount withCellValues: cellValues
^self new rowCount: rowCount columnCount: columnCount cellValues: cellValues.
次のアクセサ メソッドが追加されました。
cellValues
^cellValues
cellValues: anObject
cellValues := anObject
columnCount
^columnCount
columnCount: anObject
columnCount := anObject
rowCount
^rowCount
rowCount: anObject
rowCount := anObject
ワークスペースに次のコードがあります。
|myMatrix|
myMatrix := Matrix rowCount: 5 columnCount: 5 cellValues: 5.
Transcript show: (myMatrix rowCount).
しかし、コンパイラはそのメッセージが未定義であると言います。クラスメソッドが期待どおりに機能していないと思います。誰かが私が間違っているところを指摘できますか?