Proc.new do|arg|
arg.each do |x|
puts x
end
end.call([1,2,3,4,5])
上記のようなものを無名関数と理解しているのですが、
これを下記の様にすると、
Proc.new {|arg|
arg.each do |x|
yield(x)
end
}.call([1,2,3,4,5]) do |x|
puts x
end
no block given
とエラーになってしまいます。
無名関数で、ブロック付きメソッドって作れないものでしょうか?
ご指導の程、宜しくお願いいたします。
No.2ベストアンサー
- 回答日時:
lambda do |arg, &block|
arg.each do |x|
block.call(x)
end
end.call([1,2,3,4,5]) do |x|
puts x
end
こんな感じでどうでしゅうか?Proc.newの変わりにlambda使ってますが、procでも同じです。
No.4
- 回答日時:
何度もすいません。
追記です。Proc.new=lambda=proc見たいな感じでつかってしまいまいたが、
細かい挙動は違いますので注意してください。
誤解を与えそうだったので・・・。
↓以下を参考にして下さい。
Ruby Proc.newとlambdaの違い(追記) - ソースコード備忘録
http://d.hatena.ne.jp/yuki_rinrin/20090831/12517 …
参考URL:http://d.hatena.ne.jp/yuki_rinrin/20090831/12517 …
toby_jpさん、ご回答有難うございました。
Proc.newとlambdaの挙動の違い、頂いた参考ページなどで
確認しておきます。
ご丁寧にありがとうございました。
No.3
- 回答日時:
書き忘れてました。
コードが、ちょっと不自然な感じがする?ので、
もしよければどんなことがしたいか言っていただいたほうがいいかもしれません。
もっとスマートな方法が見つかるかと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) あるフォルダーのファイルを違う親フォルダーのサブフォルダーに移したい 11 2023/02/15 19:00
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) vba GetAsyncKeyState関数について 1 2023/08/24 12:08
- 中学校 Do you want a new bag? Want you a new bag? この二つの違い 3 2022/07/30 15:55
- Visual Basic(VBA) FileSearch2007に変わる構文について 1 2022/12/16 16:57
- Visual Basic(VBA) Excel VBAについて、 フォルダ内のファイルを全て開きたい場合、 FSOを使えば、Dirは使わ 1 2023/01/27 13:18
- Visual Basic(VBA) VBA GetAttrについて教えてください 2 2022/12/22 15:25
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- 数学 ダミー変数での相関係数の算出にやり方(疫学の分析手法について) 14 2023/03/17 11:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
あせんうぶり言語
-
100万件越えCSVから条件を満た...
-
電子書籍epub変換について
-
パイソンエラーについて
-
MacBookAir起動時にRubyソース...
-
ビーリアルのユーザー名を変え...
-
7セグメント LED ディスプレイ ...
-
VBA メモ帳の上書き保存がしたい
-
前回の質問の続き
-
教えてください
-
ウェブサイトを別の会社のホス...
-
VBAのvlookupでエラーになって...
-
これらは書誌情報だと思うので...
-
情報の表現。()内がどうしても...
-
pythonのerrorコード
-
三項でたとえば交換って
-
WinSCPで画像のように puttyを...
-
パソコンのスクリーンセーバー...
-
こういう問題分をよんだとき
-
バーチャルボックスが使えなく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「arg」は何の略?
-
例外の再スロー時に、その原因...
-
fortranを用いた行列の掛け算に...
-
pythonのプログラミング
-
英語訳をおねがいします
-
【ruby】クラスCGIを改造したい
-
【ruby】無名関数?でブロック...
-
rubyについて質問です
-
.size .atとは?(挿入ソート)
-
Rubyでクラスファイルをディレ...
-
ブロックローカル変数
-
計算の途中経過を表示
-
VBA/GetTickCountの49.7日の境...
-
Ruby Selenium 要素の待機
-
cos波表示について マクローリ...
-
Ruby Selenium リンクの取得方法
-
Ruby インスタンス変数@fooを...
-
【Ruby】基本的な質問 数字を...
-
SMLのエラーについて
-
Ruby evalで代入
おすすめ情報