delegate型変数をパラメータとするメソッドを作成し使用する。
using System;
// delegateを定義
delegate void SampleDelegate(int a);
class SampleClass
{
// インスタンスメソッドを定義
public void sampleMethod(int n)
{
Console.WriteLine(n);
}
// 靜的メソッドを定義
public static void sampleMethod1(int n)
{
Console.WriteLine(n + 10);
}
}
class MainClass
{
// delegate型変数をパラメータとしたメソッドを作成
public static void methodDelegate(int i,
SampleDelegate delegateVar)
{
// delegateを使用しメソッドを呼び出す
delegateVar(i);
}
public static void Main()
{
// SampleClassをインスタンス化
SampleClass s = new SampleClass();
// メソッドをパラメータとする
// 出力値:10
methodDelegate(10, s.sampleMethod);
// 出力値:20
methodDelegate(10, SampleClass.sampleMethod1);
}
}
0 コメント:
コメントを投稿