跨文件引用
test/test_module_1/test.rb
module Test_1
class Jisuan
private
def get_num_op(str)
array=nil
for i in ["+","-","*","/"]
if str.to_s.index(i)!=nil
array=Array.new
array[0]=i
array+=str.to_s.split(i)
array[1]=array[1].strip.to_i
array[2]=array[2].strip.to_i
end
end
puts array==nil ?"nil":"#{array}"
return array
end
public
def jisuan(str)
array=get_num_op(str)
if(array[0]=="+")
return "#{str} = #{array[1]+array[2]}"
end
if(array[0]=="-")
return "#{str} = #{array[1]-array[2]}"
end
if(array[0]=="*")
return "#{str} = #{array[1]*array[2]}"
end
if(array[0]=="/")
return "#{str} = #{array[1]/array[2]}"
end
end
end
end
test/test_module_2/test.rb
require '../test_module_1/test.rb'
puts Test_1::Jisuan.new.jisuan("1+1")
include Test_1
puts Jisuan.new.jisuan("2+2")
运行test/test_module_2/test.rb结果
["+", 1, 1]
1+1 = 2
["+", 2, 2]
2+2 = 4