【发布时间】:2016-04-13 22:57:23
【问题描述】:
#stacklike.rb file
module Stacklike
def stack
@stack ||= []
end
def add_to_stack(obj)
stack.push(obj)
end
def take_from_stack
stack.pop
end
end
#stack.rb file
require "stacklike"
class Stack
include Stacklike
end
s = Stack.new
s.add_to_stack("item one")
s.add_to_stack("item two")
s.add_to_stack("item three")
puts "Objects currently on the stack:"
puts s.stack
taken = s.take_from_stack
puts "Removed this object:"
puts taken
puts "Now on stack:"
puts s.stack
ruby stack.rb
=>
/Users/jchu773/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- stacklike.rb (LoadError)
from /Users/jchu773/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from stack.rb:1:in `<main>'
大家好,我现在正在阅读 David Black 的 Well Grounded Rubyist,我目前正在学习模块。我按照他的练习示例进行操作,但是每当我使用#require方法时,就会弹出上述错误,有人知道为什么吗?
【问题讨论】:
-
将
require改为require_relative是否有效?如果是这样,并且您想知道有什么区别,this SO Q&A 是一个很好的资源。
标签: ruby-on-rails ruby