[問題] require後class沒有定義
環境: Ruby 1.9.3
狀況:
我把類別拆開裝入其他檔案中
要使用時再從Main.rbw中require
可是出現了這樣的錯誤:
C:\RB\Game>ruby main.rbw
main.rbw:11:in `initialize': uninitialized constant Game::Conf (NameError)
from main.rbw:97:in `new'
from main.rbw:97:in `<main>'
Main.rbw裡面出問題的是這段:
#coding: utf-8
require_relative 'src/conf.rb'
class Game
def initialize
@config=Conf.new
#底下沒事...
end
#也沒事
end
而conf.rb是這樣子
#coding: utf-8
class Conf
#定義方法
end
我本來想說class可能沒有全域化
可是我還require了win32api
我就打開win32api研究
裡面長這樣:
# -*- ruby -*-
# for backward compatibility
warn "Warning:#{caller[0].sub(/:in `.*'\z/, '')}: Win32API is deprecated
after Ruby 1.9.1; use dl directly instead" if $VERBOSE
require 'dl'
class Win32API
#定義常數和方法
end
可是我卻可以直使用Win32API.new
這是怎麼回事?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.232.135.34
推
06/08 01:09, , 1F
06/08 01:09, 1F
→
06/08 01:10, , 2F
06/08 01:10, 2F
→
06/08 12:55, , 3F
06/08 12:55, 3F
→
06/08 12:57, , 4F
06/08 12:57, 4F
→
06/08 13:26, , 5F
06/08 13:26, 5F
推
06/08 17:04, , 6F
06/08 17:04, 6F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
Ruby 近期熱門文章
PTT數位生活區 即時熱門文章