zoukankan      html  css  js  c++  java
  • ruby的require路径问题

    ruby1.9删除当前目录功能,require "Action.rb"不行、

    用下面2种方式:

    require_relative "trig.rb"  .rb可以省略,虽然首字母大小写都可以,但用大写。
    require ".Action.rb"


    module中的实例变量因为不可以创建对象实例,但有一个非常有用的作用,即通过模块使用叫做混合插入(mixin)的机制实现了多重继承。
    Ruby的include语句只是创建了一个指向一个有名字的模块的引用,如果这个模块在一个独立的文件中,那么你必须先用require将这个文件引入,然后才能使用include。第二,Ruby的include不是简单的将模块的实例方法拷贝到类里面,而是建立一个从类到模块的引用。如果很多个类都包含了同一个模块,它们都指向同一样东西。如果你修改了模块中一个方法的定义,即使你的程序还在运行之中,你的类也能使用新的方法的行为[ 注意,我们这里说的是实例方法,实例变量永远都是每个对象都有一份拷贝]
    require_relative  "Trig.rb"
    class Test1
     include Trig
    end
    t=Test1.new.instance

    module Trig
      @af=1234
      PI=3.14159
      def instance
        puts "模块的实例方法"
      end
      def Trig.sin(x)
        puts "trig的sin方法"
      end
      def Trig.cos(x)
        puts "trig的cos方法"
      end
    end
    
    class Test1
     include Trig
    end
    t=Test1.new.instance
  • 相关阅读:
    校赛writeup
    memory-300——Jarvis OJ
    校赛_warmup_pwn
    sctf
    iscc-pwn1
    level3-64——Jarvis OJ
    JarvisOJ——level2
    JarvisOJ——guestbook
    Javris oj——level0
    linux 服务器 tomcat环境部署出错 重启
  • 原文地址:https://www.cnblogs.com/fpcbk/p/10819559.html
Copyright © 2011-2022 走看看