- Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
365 :デフォルトの名無しさん[sage]:2016/12/09(金) 10:49:11.49 ID:FAhbp1DA - class Lottery
result=["大吉", "中吉", "小吉", "凶", "大凶"] def roll num=rand(5) return num end print result[roll],"です。\n" end Lottery.new.roll 上記コードでundefined local variable or method `roll' for Lottery:Class (NameError)が発生します。 原因がどこにあるか教えてください。
| - Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
367 :デフォルトの名無しさん[sage]:2016/12/09(金) 11:46:46.57 ID:FAhbp1DA - >>366
解説ありがとうございます。 >「そのクラスのインスタンス(=オブジェクト)」に属しているため、インスタンスを生成していないclass定義の中から呼び出すことはできない ここをそもそも知らなかったためにどはまりだったので、助かりました。 ># クラス定義の中で大文字で始まると"クラス定数" 定数じゃないとエラーが出るんですね。勉強不足でした。 ># データ生成と表示はメソッドを分ける そこそこ勉強しているつもりですが、まだまだ初心者を抜け出せない状態です。実際のところ相当煮詰まっている状態でして、こういった実装時の作法? みたいなものを知りません。おすすめの書籍などありませんでしょうか。 ># あと画面表示にputsメソッドを紹介してない参考書は焚書で 焚書ですか…
| - Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
369 :デフォルトの名無しさん[sage]:2016/12/09(金) 13:55:22.62 ID:FAhbp1DA - >>367
了解しました。まだ基礎力が定着していないのに分不相応でしたね。ですが、最近なんかDRYが多くて 作成したコードが不細工だなあと感じるようになり、うまくすっきりしたコードは書けないかなと思ったものですから。 まあ、とにかく基礎的・基本的なことに集中しようと思います。
|
|