ジョギング
- 昨日, 柱の角にぶつけた右足薬指が腫れていたので大事を取って休んだ
- 早く治さねば...
日課
- (腕立て x 50 + 腹筋 x 50) x 3
頭痛
- 右肩の強い張りと頭痛
- ストレッチー、ストレッチー
今日のるびぃ ~ Ruby 技術者認定試験 Gold 演習問題を解いていく (19) ~
もう何度か解いているけど, Ruby 技術者認定試験合格教本 の演習問題と模擬試験を数問ずつ解いていく. ポイントは, 問題が何について問われているかがちゃんと理解出来ていること.
Q25. オブジェクト指向
以下のコードと同じ意味 (同じ結果となる) のコードを選ぶ.
def foo puts 'Hello' end
以下と同じ意味となる.
class Object private def foo puts 'Hello' end end
以下, irb による動作確認.
irb(main):001:0> def foo irb(main):002:1> puts 'Hello' irb(main):003:1> end => :foo irb(main):004:0> foo Hello => nil # 一旦, irb を抜けてからの... irb(main):001:0> class Object irb(main):002:1> private irb(main):003:1> def foo irb(main):004:2> puts 'Hello' irb(main):005:2> end irb(main):006:1> end => :foo irb(main):007:0> foo Hello => nil
以下, 解説より抜粋.
Q26. 文法
以下の実行結果になるように, [ x ] に記述する適切なコードを選ぶ.
add = Proc.new{|x, y| x + y} puts [ x ]
実行結果.
3
- add.call(1, 2)
以下, irb による動作確認.
irb(main):001:0> add = Proc.new{|x, y| x + y} => #<Proc:0x005559452d4ad0@(irb):1> irb(main):002:0> puts add.call(1, 2) 3 => nil
以下, 解説より抜粋.
- Proc オブジェクトのコードブロックは call で実行する
- call の引数は,
| |
で囲まれた変数に渡される
Q27. 組み込みライブラリ
以下の実行結果になるように, [ x ] に記述する適切なコードを選ぶ.
/(\d+)/ =~ "abcd12efgh" puts [ x ]
実行結果.
12
- $1
以下, irb による動作確認.
irb(main):003:0> /(\d+)/ =~ "abcd12efgh" => 4 irb(main):004:0> puts $1 12 => nil
以下, 解説より抜粋.
フムフム