nim支援將乙個程式分成若干個模組的概念。每個模組都有自己的檔案.
nim的乙個原始檔通常稱為乙個模組,模組可以使資訊隱藏和分開編譯。乙個模組可以通過import語句訪問另乙個模組的識別符號.
這裡我們就介紹幾種方法在乙個模組中去訪問另乙個模組中的識別符號:
#moduel importtest
var
str*:string="hello" #`*`表示該符號為模組的輸出符號,可以在其他模組中訪問
#a,b*:int=5 #這樣定義,只是把b定義為了出口變數,a不是
a*,b* :int=5 #a,b皆為輸出符號
c,d:float=5.5
proc addtest*(a,b:int):int=
result=a+b
proc stringtest*(s:string):string=
result = s & "world"
proc subtest*(c,d:float):float=
result=c-d
echo subtest(c,d)
測試**:
##匯入檔案只能匯入當前目錄以及其子目錄下的檔案
discard """
import importtest except addtest #匯入importtest模組,除了addtest過程
echo stringtest(str)
echo addtest(a,b) #error: undeclared identifier: 'addtest' 沒有匯入importtest模組中的addtest,所以不能使用
"""discard """
import importtest as it #為了使用方便,可以為複雜的模組名定義乙個別名
echo it.a #與echo a相同 #這裡也可以不使用別名呼叫識別符號,若使用模組名則必須使用定義的模組別名,不可使用原模組名
echo it.stringtest(str)
"""discard """
#from importtest import a,b,addtest,c #無法匯入乙個模組中的非輸出符號,此處c是importtest模組中的非輸出符號
from importtest import a,b,addtest
echo addtest(a,b)
#echo str #沒有匯入str,這裡不能使用
#echo c
"""discard """
from importtest import nil
echo importtest.a #必須使用模組名作為字首
echo importtest.addtest(importtest.a,importtest.b)
echo importtest.c #即使用模組名為字首也無法訪問乙個模組中的非輸出符號
"""discard """
from importtest as it import nil #當使用別名時,只能用別名呼叫模組中的識別符號,原模組名不能再使用
echo it.a
echo it.addtest(it.a,it.b)
"""discard """
include importtest #匯入整個檔案的內容,這樣無法使資訊隱藏
echo addtest(a,b)
echo stringtest(str)
echo c
echo subtest(c,d)
"""
dmp檔案匯入的方法
1,使用oracle的imp命令匯入 dmp檔案 首先要明確知道,使用oracle的imp命令進行匯入,要在乙個空的資料庫下,才是最好的,否則,資料表存在的話,就要先刪除資料表中的資料 步驟1 禁用約束 alter table table disable constraint fk foreignk...
Nim 中的引數傳遞
在 nim 中過程或方法有兩種引數型別,一種是前面有 var 關鍵字 的引數,另一種是不帶 var 的引數。例如 proc divmod a,b int res,remainder var int res a div b remainder a mod b var x,y int divmod 8,...
匯入CSS檔案的方法總結
html主要負責網頁的內容展現,而css檔案負責網頁內容的樣式,在html中使用css的方法有三種,希望對大家有幫助。具體一點就是在html標籤中使用css,書寫規範如下 lang zh cn charset utf 8 內聯樣式title head style color red font siz...