ruby-on-rails – 表达式和Proc.new在方法中做了什么?

ruby-on-rails – 表达式和Proc.new在方法中做了什么?,第1张

概述我在rails源中找到了& Proc.new的用法: # rails/railties/lib/rails/engine.rbdef routes @routes ||= ActionDispatch::Routing::RouteSet.new @routes.append(&Proc.new) if block_given? @routesend 我不明白表达式和Proc.ne 我在rails源中找到了& Proc.new的用法:

# rails/railtIEs/lib/rails/engine.rbdef routes  @routes ||= Actiondispatch::Routing::RouteSet.new  @routes.append(&Proc.new) if block_given?  @routesend

我不明白表达式和Proc.new是如何工作的.

我写了类似的代码,但失败了:

def method_name  &Proc.new if block_given?endproc = method_name{ puts 'Hello World!' }proc.call

我收到了语法错误:

Syntax error,unexpected &    &Proc.new if block_given?

>表达式和Proc.new在方法中做了什么?

解决方法 &安培;在参数列表中有一个特殊的含义 – 当用作Proc对象的前缀时,它将它作为块传递给被调用的方法.在方法体内,它只是一个二元运算符. 总结

以上是内存溢出为你收集整理的ruby-on-rails – 表达式和Proc.new在方法中做了什么?全部内容,希望文章能够帮你解决ruby-on-rails – 表达式和Proc.new在方法中做了什么?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1284272.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存