Unsafe 程式碼和指標 (C# 程式設計手冊)
為了維護型別安全 (Type Safety) 和安全性,C# 預設不支援指標算術。 然而,藉由使用 unsafe 關鍵字,即可定義能在其中使用指標的 unsafe 內容。 如需指標的詳細資訊,請參閱指標型別主題。
注意事項 |
---|
在 Common Language Runtime (CLR) 中,Unsafe 程式碼稱為無法驗證的程式碼。 C# 中的 Unsafe 程式碼不一定具有危險性,只是它的安全性無法由 CLR 驗證。 因此,CLR 將只會執行位於完全受信任組件內部的 Unsafe 程式碼。 如果您使用 Unsafe 程式碼,請務必確認程式碼不會帶來安全性風險或造成指標錯誤。 |
Unsafe 程式碼概觀
Unsafe 程式碼具有下列屬性:
方法、型別及程式碼區塊都可以定義為 Unsafe
在某些情況下,Unsafe 程式碼可能藉由移除陣列界限檢查,來增加應用程式的效能
當呼叫需要指標的原生函式時,便會需要使用 Unsafe 程式碼
使用 Unsafe 程式碼會帶來安全性和穩定性風險
為了讓 C# 編譯 Unsafe 程式碼,必須以 /unsafe 來編譯應用程式
相關章節
如需詳細資訊,請參閱:
C# 語言規格
如需詳細資訊,請參閱 C# 語言規格。 語言規格是 C# 語法和用法的決定性來源。