C# デリゲートを学習しようとしています。このコードをコンパイルすると、件名にこのエラー メッセージが表示されます。
タイプ 'int' を 'Foo.Bar.Delegates.Program.ParseIntDelegate' に暗黙的に変換することはできません
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Foo.Bar.Delegates
{
class Program
{
private delegate int ParseIntDelegate();
private static int Parse(string x)
{
return int.Parse(x);
}
static void Main()
{
string x = "40";
int y = Parse(x); //The method I want to point the delegate to
ParseIntDelegate firstParseIntMethod = Parse(x);
//generates complier error: cannot implicity convert type int
//to 'Foo.Bar.Delegates.Program.ParseIntDelegate'
ParseIntDelegate secondParseIntMethod = int.Parse(x); //Same error
Console.WriteLine("Integer is {0}", firstParseIntMethod());
}
}
}
だから、何が間違っているのか理解できるまで立ち往生しています。誰かがこれを理解するのを手伝ってくれたら、とても感謝しています。