現來看個例子:
public class user
public class group
class program
}這樣會報錯(invalidcastexception),由於c#安全機制,它會去判斷一次。我們這裡做了非法的轉換。
is做判斷:is說判斷物件是不是你要的那個型別(這裡說user)
修改後的示例如下:
class program}}
這樣的話,我們在obj is user這裡做了一次判斷,我們剛才說了,(user)obj這樣ougfj的操作(強制轉換)編譯ougfj器還會做一次操作,這樣就有效能上面的消耗。來看看as。
as操作:如果說改物件就轉換,不是則返回null.
class program}}
注:個人比較喜歡用as,簡化了操作也提ougfj高了效能,做乙個null判斷,直接處理這種異常也說很方便。
本文標題: c#中is和as用法例項分析
本文位址:
C 中DataBindings用法例項分析
在c 運算元據庫過程中,針對一般的文字控制項,比如textbox,label等,我們賦值直接使用類似textbox.text 的方式來進行,這種方式從某種意義上來說的確是最簡便的方式,但是對於複雜一些的空間,比如說datagridview,這個時候,繫結資料來源我們一般使用datagridview1...
python中as用法例項分析
import some some 程式設計客棧為乙個模組 如果想要改變被導dmsvgqzl入模組在當前模組中的名稱,而不是sys.modules中的名稱。可以使用import as,例如 import some as other print other.name 和import some dmsvg...
C 中out保留字用法例項分析
c 中的out保留字表示這個變數要回傳值,最簡單的應用是除法,比如你需要乙個除法方法,同時得到餘數和商,但是普通的方法只能得到乙個返回值,這個時候就可以使用out引數,把另乙個值返回www.cppcns.com。當希望方法返回多個值時,宣告 out 方法非常有用。使用 out 引數的方法仍然可以返回...