質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

2回答

2405閲覧

rubyのclassにおける外部アクセスについて

earnest_gay

総合スコア615

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

1クリップ

投稿2017/02/05 15:27

rubyのclassにおける外部アクセスについてです。

ruby

1class Event 2 3 @@config 4 CONFIG = "定数" 5 6 def initialize(conf) 7 @@config = conf 8 end 9 10 def event1(num) 11 puts "#{@@config[:name]}さんは#{num}時に#{@@config[:event1]}をする予定です。" 12 end 13 14 def event2(num) 15 puts "#{@@config[:name]}さんは#{num}時に#{@@config[:event2]}をする予定です。" 16 end 17 18 19end 20 21conf = {name: "山田",event1: "料理",event2: "勉強"} 22 23event = Event.new(conf) 24event.event1(19) 25event.event2(21) 26p Event::CONFIG 27

p Event::CONFIG
で定数にアクセスできますが
p Event::config
p Event::@@config
としても変数にアクセスできません。

外部からクラス変数を取得するにはどうしたら良いでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

参考情報

投稿2017/02/05 16:07

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

そういうメソッドを定義して使います。

Ruby

1def Event.config 2 @@config 3end

@@configはクラス変数ですけど、インスタンス変数にすべきでは?

投稿2017/02/05 15:41

otn

総合スコア84423

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問