語言 :
SWEWE 會員 :登錄 |註冊
搜索
百科社區 |百科問答 |提交問題 |詞彙知識 |上傳知識
上一頁 1 下一頁 選擇頁數

公共語言規範

簡介

公共語言規範(Common Language Specification, CLS)

公共語言運行庫支持的語言功能的子集,包括幾種面向對象的編程語言的通用功能。符合CLS 的組件和工具能夠保證與其他符合CLS 的組件和工具交互操作。請參見:符合 CLS 的。

定義

.NET Framework將CLS定義為一組規則,所有.NET語言都應該遵循此規則才能創建與其他語言可互操作的應用程序,但要注意的是為了使各語言可以互操作,只能使用CLS所列出的功能對象,這些功能統稱為與CLS兼容的功能。 ?例如:C#支持無符號數字類型,該特徵能通過CTS的測試,但CLS卻僅僅識別符號數字類型。因此,如果用戶在一個組件中使用C#的無符號類型,就可能不能與不使用無符號類型的語言(如VB.NET)設計的.NET組件實現互操作。這裡用的是“可能不”,而不是“不可能”,因為這一問題實際依賴於對non-CLS-compliant項的可見性。事實上,CLS規則只適用於或部分適用於那些與其他組件存在聯繫的組件中的類型。實際上,用戶能夠安全實現含私有組件的項目,而該組件使用了用戶所選擇使用的.NET語言的全部功能,且無需遵守CLS的規範。另一方面,如果用戶需要.NET語言的互操作性,那麼用戶的組件中的公共項必須完全符合CLS規範。適用對象

要和其他對象完全交互,而不管這些對像是以何種語言實現的,對象必須只向調用方公開那些它們必須與之互用的所有語言的通用功能。為此定義了公共語言規範(CLS),它是許多應用程序所需的一套基本語言功能。 CLS 規則定義了通用類型系統的子集,即所有適用於公共類型系統的規則都適用於CLS,除非CLS 中定義了更嚴格的規則。 CLS 通過定義一組開發人員可以確信在多種語言中都可用的功能來增強和確保語言互用性。 CLS 還建立了CLS 遵從性要求,這幫助您確定您的託管代碼是否符合CLS 以及一個給定的工具對託管代碼(該代碼是使用CLS 功能的)開發的支持程度。

如果您的組件在對其他代碼(包括派生類)公開的API 中只使用了CLS 功能,那麼可以保證在任何支持CLS 的編程語言中都可以訪問該組件。遵守CLS 規則、僅使用CLS 中所包含功能的組件叫做符合CLS 的組件。

大多數由.NET Framework 類庫概述中的類型定義的成員都符合CLS。但是,類庫中的某些類型具有一個或多個不符合CLS 的成員。這些成員能夠支持CLS 中沒有的語言功能。在參考文檔中以及所有存在符合CLS 的替換選項的情況中,不符合CLS 的類型和成員也照此標識。有關.NET Framework 類庫中類型的更多信息,請參見.NET Framework 類庫參考。


上一頁 1 下一頁 選擇頁數
用戶 評論
還沒有評論
我要評論 [遊客 (3.138.*.*) | 登錄 ]

語言 :
| 校驗代碼 :


搜索

版权申明 | 隐私权政策 | 版權 @2018 世界百科知識