C Using的幾種用法

2022-08-24 03:30:19 字數 1445 閱讀 2600

(1)引用命名空間 

using作為引入命名空間指令的用法規則為:  using namespace; 

在.net程式中,最常見的**莫過於在程式檔案的開頭引入system命名空間,其原因在於system命名空間中封裝了很多最基本最常用的操作,下面的**對我們來說最為熟悉不過:  using system; 

這樣,我們在程式中就可以直接使用命名空間中的型別,而不必指定詳細的型別名稱。using指令可以訪問巢狀命名空間。 

關於:命名空間 

命名空間是.net程式在邏輯上的組織結構,而並非實際的物理結構,是一種避免類名衝突的方法,用於將不同的資料型別組合劃分的方式。例如,在.net中很多的基本型別都位於system命名空間,資料操作型別位於system.data命名空間。

(3)強制資源清理 

用途:清理非託管資源,不受gc控制的資源。using結束後會隱式的呼叫disposable方法。 

用法: 

using (class1 c = new class1())  //清理非託管不受gc控制的資源 

但是當物件使用using關鍵字的時候,必須實現idisposable介面。其實using的使用和try-catch-finaly中,在finaly**域呼叫disposable方法效果一樣。注意using不能使用多個不同的類  

class1 f = new class1();

try 

catch()  

finally  

using 語句獲取乙個或多個資源,執行乙個語句,然後處置該資源。      

using 語句: 

using ( 資源獲取 ) 嵌入語句  資源獲取:  區域性變數宣告  表示式 

資源是實現 system.idisposable 的類或結構,它包含名為 dispose 的單個無引數方法。(如:截圖2)正在使用資源的**可以呼叫 dispose 以指示不再需要該資源。如果不呼叫 dispose,則最終將因為垃圾**而發生自動處置。 

如果資源獲取的形式是區域性變數宣告,那麼此區域性變數宣告的型別必須為

system.idisposable 或是可以隱式轉換為 system.idisposable 的型別。如果資源獲取的形式是表示式,那麼此表示式必須是 system.idisposable 或是可以隱式轉換為 system.idisposable 的型別。 

在資源獲取中宣告的區域性變數必須是唯讀的,且必須包含乙個初始值設定項。  using 語句被翻譯成三個部分:獲取、使用和處置。資源的使用隱式封閉在包含乙個 finally 子句的 try語句中。此 finally 子句處置資源。如果獲取了 null 資源,則不進行對 dispose 的呼叫,也不引發任何異常。 

例如,下列形式的 using 語句  

using (r r1 = new r())  

完全等效於 

r r1 = new r();  

try  

C using用法詳解

using 關鍵字有兩個主要用途 一 作為指令,用於為命名空間建立別名或匯入其他命名空間中定義的型別。二 作為語句,用於定義乙個範圍,在此範圍的末尾將釋放物件。using指令 允許在命名空間中使用型別,這樣,您就不必在該命名空間中限定某個型別的使用 using system.text using p...

C using用法詳解

using 關鍵字有兩個主要用途 一 作為指令,用於為命名空間建立別名或匯入其他命名空間中定義的型別。二 作為語句,用於定義乙個範圍,在此範圍的末尾將釋放物件。using指令 允許在命名空間中使用型別,這樣,您就不必在該命名空間中限定某個型別的使用 using system.text using p...

C using用法總結

c using用法總結 1 配合命名空間,對命名空間許可權進行管理 using namespace std 釋放整個命名空間到當前作用域 using std cout 釋放某個變數到當前作用域2 型別重新命名 作用等同typedef,但是邏輯上更直觀。include using namespace ...