0

初心者の質問で申し訳ありませんが、長い間試したにもかかわらず、これを理解できませんでした。

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).

しかし、コンパイラはそのメッセージが未定義であると言います。クラスメソッドが期待どおりに機能していないと思います。誰かが私が間違っているところを指摘できますか?

4

1 に答える 1