ユーザ用ツール

サイト用ツール


cli:interface

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

cli:interface [2009/01/31 15:10]
192.168.0.63
cli:interface [2013/12/23 09:08]
ライン 1: ライン 1:
-====== interface ====== 
-インターフェイスはC++でいえば、純粋仮想関数のみを含むクラス、のようなものです。キーワードinterface classを用いて定義し、その型は以下の宣言を含むことができます。 
-  * 関数 
-  * プロパティ 
-  * イベント 
-もちろん含めることができるのは宣言だけであり、定義することはできません。 
  
-C++/​CLIのref classはref classに対して単一継承しかできませんが、インターフェースはいくつも多重継承できます。このへんはJavaと同じです。クラスAから派生したクラス Bがあるとし、BはインターフェースIA,​IB,​ICからも派生しているとするとき、クラスBは以下のように書きます。 
-<code cpp> 
-interface class IA { 
-public: 
-    void funcIA(); 
-}; 
-interface class IB { 
-public: 
-    void funcIB(); 
-}; 
-interface class IC { 
-public: 
-    void funcIC(); 
-}; 
-ref class A { 
-    int i; 
-}; 
-ref class B : A, IA, IB, IC { 
-public: 
-    virtual void funcIA() {   } 
-    virtual void funcIB() {   } 
-    virtual void funcIC() {   } 
-}; 
-int main() { 
-    B^ b = gcnew B; 
-    ​ 
-    IA^ ia = b; 
-    IB^ ib = b; 
-    IC^ ic = b; 
-    b->​funcIA();​ 
-    ia->​funcIA();​ 
-    ib->​funcIB();​ 
-    ic->​funcIC();​ 
-    return 0; 
-} 
-</​code>​ 



/var/www/html/virtual/cppcli/data/pages/cli/interface.txt · 最終更新: 2013/12/23 09:08 (外部編集)