博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ruby require
阅读量:5889 次
发布时间:2019-06-19

本文共 1033 字,大约阅读时间需要 3 分钟。

 

require一般用来加载其它的类,如: 
#Ruby代码  :
require 'dbi'  
require "rexml/document"
但是上面加载的是标准类库里面的文件,当然也可以是已安装的gems文件,
但是如果是自己在本地写的文件,就不能直接用require了,
而应该这样:
#E7.4-1.rb Module(模块)
module Module1
  def sqrt(num, rx=1, e=1e-10)
    num*=1.0
    (num - rx*rx).abs <e ? rx : sqrt(num, (num/rx + rx)/2, e)
  end
end
#E7.4-2.rb Person 类
class Person
  def talk
    puts "I'm talking."
  end
end
#用require_relative加载本地Ruby文件
require_relative "E7.4-1"  这里是相对路径
require_relative "E7.4-2" 
class Student < Person
  include Module1
end
aStudent=Student.new
aStudent.talk # I'm talking.
puts aStudent.sqrt(77,2) # 8.77496438739435
#但是这个如果想直接通过require的方式来引用也是有办法的,那就是在文件头部将当前目录作为ruby加载的路径:
#其中File.dirname(__FILE__)代表当前路径,而$LOAD_PATH.unshift方法的目的就是将当前目录作用ruby标准的加载路径
$LOAD_PATH.unshift(File.dirname(__FILE__)) unless $LOAD_PATH.include?(File.dirname(__FILE__))  
require "E7.4-1" 
require "E7.4-2" 
class Student < Person
  include Module1
end
aStudent=Student.new
aStudent.talk # I'm talking.
puts aStudent.sqrt(77,2) # 8.77496438739435

转载于:https://www.cnblogs.com/znsongshu/p/6658213.html

你可能感兴趣的文章
算法学习的轨迹(转)
查看>>
asmx-web-service-basic-authentication
查看>>
Excel转换成图片的操作方法
查看>>
MFC中读取和设置文件状态
查看>>
分页显示
查看>>
iOS中安全结束 子线程 的方法
查看>>
批处理学习笔记8 - 深入学习For命令1
查看>>
Object-c学习之路二(oc内存管理黄金法则1)
查看>>
python开发_python文件操作
查看>>
iPhone 已停用
查看>>
CSS3之边框图片border-image
查看>>
图片轮换cycle插件的运用
查看>>
【Oracle】两个表Join关联更新
查看>>
ActiveX控件的安全初始化和脚本操作 和 数字签名SIGN
查看>>
关于IE下AJAX的问题探讨
查看>>
Eclipse console文本换行
查看>>
微信支付开发(11) Native支付
查看>>
HDFS dfsclient写文件过程 源码分析
查看>>
【设计模式】—— 代理模式Proxy
查看>>
ejabberd
查看>>