午夜视频在线瓜伦,亚洲精品国产精品乱码不99,精品久久久久中文字幕app,亚洲精品美女久久久久99

<table id="zpt16"><strong id="zpt16"></strong></table>
    1. <samp id="zpt16"><b id="zpt16"></b></samp>
      
      
      當(dāng)前位置:首頁 > 環(huán)氧資訊 > 正文

      C語言import詳解:必須引入哪些頭文件以正確使用?

      已合并類型庫中的信息至C++類,以便描述COM接口。在編程中,我們經(jīng)常需要處理這種類型庫導(dǎo)入操作。這篇文章將介紹如何使用#import指令來導(dǎo)入類型庫,并對其進(jìn)行必要的說明。

      使用#import指令導(dǎo)入類型庫時,需要指定要導(dǎo)入的類型庫文件名。這個文件名可以是.olb、.tlb或.dll文件。例如,在訪問數(shù)據(jù)庫時常用的msado15.dll就是一個典型的例子。還可以指定類型庫中的progid或libid來導(dǎo)入。需要注意的是,在使用64位操作系統(tǒng)的交叉編譯器編譯時,該編譯器可能只能讀取32位注冊表配置。建議使用本地64位編譯器編譯并注冊64位類型共享庫。如果不指定版本或lcid,則默認(rèn)使用progid的規(guī)則進(jìn)行導(dǎo)入。還可以導(dǎo)入可執(zhí)行文件(.exe)、包含類型庫的庫文件(例如包含類型庫資源的.ocx的.dll文件)、符合文件的保留類型庫以及可由LoadTypeLib API理解的其他文件格式。

      下面我們來討論一個關(guān)于Python模塊導(dǎo)入的示例。假設(shè)存在一個名為IsDir的目錄,其中包含多個模塊(如A、B、C、D)和一個__init__.py文件。當(dāng)我們想要調(diào)用這些模塊時,有幾種方法可以實(shí)現(xiàn)。如果__init__.py文件為空,那么我們可以直接從IsDir目錄中導(dǎo)入模塊A、B、C和D。例如,我們可以使用from IsDir import A、B、C和D的方式來分別導(dǎo)入各個模塊并調(diào)用其函數(shù)。我們還可以使用import語句加上模塊的名稱來導(dǎo)入它們,然后通過IsDir目錄來訪問這些模塊。但需要注意的是,如果直接執(zhí)行import IsDir而沒有指定具體的模塊名稱,那么將無法成功導(dǎo)入其中的模塊A、B、C和D。這是因?yàn)楫?dāng)__init__.py文件為空時,Python無法知道需要導(dǎo)入哪些模塊。在調(diào)用這些模塊之前,我們需要明確指定要導(dǎo)入的模塊名稱。從官方文檔中可以了解到,如果沒有在__init__.py文件中定義__all__列表,那么使用from IsDir import 語句將無法導(dǎo)入IsDir目錄下的所有模塊。在調(diào)用模塊時需要確保正確指定了要導(dǎo)入的模塊名稱。

      一、關(guān)于Python模塊導(dǎo)入的正確方式

      只有執(zhí)行如上文所示的代碼,才能正確進(jìn)行操作,否則可能會出現(xiàn)錯誤。官方說明,在使用`importIsDir.A`時,它本身并沒有任何意義,只有緊接著執(zhí)行`fromIsDirimport`后,`importIsDir.A`語句中的`moduleA`才會被定義。完整的調(diào)用應(yīng)該為:

      1. 首先導(dǎo)入模塊:`import IsDir.A`

      2. 從IsDir中導(dǎo)入所有模塊:`from IsDir import `

      二、關(guān)于init.py文件的使用

      在Python的包(package)中,init.py文件用于指定該包下可以被導(dǎo)入的模塊。例如,在CatIsDir目錄下,init.py文件可以包含以下內(nèi)容:

      init.py文件內(nèi)容如下:

      `__all__=["A","B"]`

      然后可以這樣使用:

      使用腳本示例:

      ```python

      #!/usr/bin/env python

      from IsDir import

      A.say()

      B.say()

      ```

      運(yùn)行上述腳本,將輸出:

      `This is module A!`

      `This is module B!`

      錯誤實(shí)例:

      如果嘗試執(zhí)行如下代碼:

      ```python

      #!/usr/bin/env python

      from IsDir import

      C.say()

      ```

      將會出錯,因?yàn)镃并未在init.py文件的`__all__=["A","B"]`中定義。這說明,init.py文件中的`__all__=[]`具有隔離模塊的作用。

      三、關(guān)于模塊A、B、C、D的方法定義

      以模塊A為例,它的代碼可能如下:

      在CatIsDir目錄下的A.py文件:

      ```python

      def say():

      print "This is module A!"

      ``` 類似地,其他模塊也會有相應(yīng)的方法定義。

      四、關(guān)于import的詞義解析