言語セクション

ジェネリッククラス [edit]

ジェネリッククラスの定義VB.NET版

 class MyGenericClass1<T> where T : struct {
  // 制約:Tは構造体
 }
 class MyGenericClass2<T> where T : class {
  // 制約:Tはクラス
 }
 class MyGenericClass3<T> where T : new() {
  // 制約:Tはインスタンス化可能
 }
 class MyGenericClass4<T> where T : MyOtherClass {
  // 制約:TはMyOtherClassクラスを継承
 }
 class MyGenericClass5<T> where T : IMyInterface {
  // 制約:TはIMyInterfaceインターフェイスを実装
 }
 class MyGenericClass6<T, U> where T : U {
  // 制約:Tは別の型パラメータUを継承
 }
 class MyGenericClass7<T, F> : IDisposable
        where T : MyOtherClass<F>, IDisposable, new()
        where F : class
 {
  // 制約:T,Fは別々のクラス
 }
 class MyOtherClass {
  // あるクラス
 }
 interface IMyInterface {
  // あるインターフェイス
 }

ジェネリックメソッド [edit]

void SwapIfGreater<T>(ref T lhs, ref T rhs) where T : System.IComparable<T>
{
    T temp;
    if (lhs.CompareTo(rhs) > 0)
    {
        temp = lhs;
        lhs = rhs;
        rhs = temp;
    }
}

コメント:



(画像の文字列を入力して下さい)

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS