質問力アップキャンペーンを個人的に開始したBJCRobotです、よろしくお願い致します。
Rubyに関しては、ほぼ初心者レベルです。
技術評論社のRuby徹底攻略というムックで学習しています。
で、キーワード引数は、引数名の後ろに 「:」コロン(もちろん半角です)を
付けるということだと理解したのですが、実際に書いてみるとエラーになってしまいます。
Ruby
1#!/usr/bin/ruby 2 3puts "Hello Ruby" 4 5def foo(bar:, boo:) 6 puts boo 7 puts bar 8end 9 10foo(boo: "aaa", bar: "bbb")
実行するとエラーになります。
$ ./hello_20160630.rb ./hello_20160630.rb:5: syntax error, unexpected ',' def foo(bar:, boo:) ^ ./hello_20160630.rb:8: syntax error, unexpected keyword_end, expecting end-of-input
キーワード引数で無い書き方であれば、動きます。
Ruby
1#!/usr/bin/ruby 2 3puts "Hello Ruby" 4 5def foo(bar, boo) 6 puts boo 7 puts bar 8end 9 10foo("aaa", "bbb") 11
$ ./hello_20160630.rb Hello Ruby bbb aaa
検索で見つけた以下のページによると
Rubyテクニック: Rubyの通常の引数とキーワード引数の違い
キーワード引数が使えるようになったのは、Ruby2.0からとのことなので、確認してみると
$ ruby -v ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15]
大丈夫そうです。
環境は、Mac OS X El Capitanです。
何か根本的に勘違いしてますでしょうか?
他になにか確認することがあれば、ご教授いただけましたら幸いです。
よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/30 14:30