紅寶石名稱錯誤的原因:未初始化的常數(shù)錯誤
來源:教育資源網(wǎng)
?
發(fā)布時間:2020-11-28 08:00:26
?
點擊:339
開源編程語言Ruby以其清晰的語法和易用性而聞名。這并不意味著你會't偶爾會遇到錯誤消息。最棘手的問題之一是名稱錯誤未初始化的常量異常,因為它有多種原因。例外的語法遵循以下格式:
NameError:未初始化的c
或
NameError:未初始化的常數(shù)
(其中各種班級名稱代替了東西)
Ruby NameError Uninitialized Constant Causes
未初始化的常量錯誤是常規(guī)名稱錯誤異常類的變體。它有幾個可能的原因。
- You'當代碼引用一個可以't查找的類或模塊時,通常因為代碼不't包含require,它指示Ruby文件加載類。
- 在Ruby中,變量/方法以小寫字母開頭,而類以大寫字母開頭。如果代碼沒有't反映這種區(qū)別,您'將收到未初始化的常量異常。
- 名稱錯誤的另一個可能原因是您've做了一個簡單的拼寫錯誤。
- Ruby是區(qū)分大小寫的,所以"TestCode"and"TestCode"完全不同。
- 代碼中提到了rubygems,除舊版本的Ruby外,其他所有版本都不使用。
如何修復(fù)錯誤
要排除代碼故障,請一次檢查上面列出的可能原因。如果您發(fā)現(xiàn)問題,請解決。例如,瀏覽代碼,尋找變量和類的大寫和小寫用法的差異。如果找到并糾正它,您的問題可能會解決。如果它是't,繼續(xù)通過其他可能的原因,隨時修復(fù)。
如果您在代碼中提到的課程是在另一個模塊中,請使用以下全名引用它:
#!/usr/bin/env rubymodule MyModule類MyClass;endendc=MyMo
關(guān)于紅寶石例外
例外情況是Ruby如何將注意力集中在代碼中的問題上。當遇到代碼中的錯誤時,異常是"升高"或"投擲"程序默認關(guān)閉。
Ruby發(fā)布具有預(yù)定義類的異常層次結(jié)構(gòu)。NameErrors屬于StandardError類健康營養(yǎng)小知識大全集,以及RuntimeError,ThreadError,RangeError,argenterror等。本課程包括您在典型Ruby程序中遇到的大多數(shù)正常例外情況。