cat module1.rb:
#!/home/user1/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Module module1
def add(a,b)
return a+b
end
def subtract(a,b)
return a-b
end
end
temp = "nothing"
temp.extend module1
temp.add(5,2)
ruby module1.rb =>
module1.rb:13: syntax error, unexpected keyword_end, expecting $end
任何人都可以解决它吗?
答案 0 :(得分:11)
module
关键字区分大小写,并且,正如Ray所说,模块必须是常量(Ruby中的常量名称以大写字母开头)。这有效:
module Module1
def add(a,b)
return a+b
end
def subtract(a,b)
return a-b
end
end
temp = "nothing"
temp.extend Module1
temp.add(5,2)
答案 1 :(得分:1)
你需要一个小写的m来启动它。
哦,模块名称应该是常量....
从
开始module Module1