首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

C++/CLI:最強大的 .NET 語言之存取性與屬性、委派

     編輯:VC 教學

CLR 擴展存取修飾詞至命名空間、巢狀類型,並支援組件內/外雙重可見性。C++/CLI 提供比 C# 更精細的控制。

型別與成員存取性


public ref class R {
public:           // 組件內外皆可見
private public:   // 僅組件內可見
protected public: // 組件內 + 衍生類(跨組件)可見
};
  • 單一關鍵字同時作用於內部/外部。
  • 雙關鍵字:第一個限制外部,第二個限制內部。

屬性:語法優化

C# 風格屬性語法,編譯器自動生成 get_Prop/set_Prop 與中繼資料。


property String^ Name {
    String^ get() { return m_name; }
    void set(String^ v) { m_name = v; }
}
// 存取性獨立控制
property String^ Name {
public: String^ get();
private public: void set(String^);
}
// 簡略寫法:自動實作
property String^ Name;

委派:型別安全的函數指標

委派綁定靜態/實例方法,支援多播鏈結。


delegate void Func();
ref struct T {
    void InstanceMethod() {}
    static void StaticMethod() {}
};
Func^ f = gcnew Func(gcnew T(), &T::InstanceMethod);
f += gcnew Func(&T::StaticMethod); // 多播
f(); // 依序調用

總結

C++/CLI 提供空前的威力與優雅語法:精細存取控制、原生屬性語法、型別安全委派,在不犧牲效能前提下完整支援 .NET 應用開發。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved