2016-11-21 7 views
1

このクラスのコンストラクタでメソッドによって宣言された配列を認識するにはどうすればよいですか?コンストラクタの配列を認識

私はエラーを受け取っ:

undefined local variable or method 'myArray'

class Calc 
    def initialize() 
     myArray = [] 
    end 

    def add4ToArray() 
     myArray.push(4) 
     puts myArray.size 
    end 
end 

obj1 = Calc.new 
obj1.add4ToArray() 
+0

一般的な方法は、メソッド名にフルダウンケースのsnake_caseを使用することです。メソッド呼び出し中にprint/putsなどを呼び出すときは、メソッド定義にこれらを入れないでください。メソッドがパラメータを定義していない場合は、メソッド名に '()'を追加する必要はありません。 –

答えて

3

あなたはローカル変数とは対照的に、インスタンス変数として宣言する必要があります。コンストラクタでは、@myarray = []を使用します。

+2

'@myarray = []'を意味しますか? –

+0

はい!キャッチをありがとう –

関連する問題