Возвращаемое значение не отображается
Я хочу, чтобы выходные данные были показаны как "10", но ниже выходных данных кода"System.Func'1[System.Int32]"
Разве функция не возвращает "10"? Почему это не отображается?
using System;
namespace ConsoleApplication
{
class Program
{
public int Get10()
{
return 10;
}
static void Main(string[] args)
{
var ten=new Func<int>(new Program().Get10);
Console.WriteLine(ten);
}
}
}
3 ответов:
Вы инкапсулируете метод, когда вы объявили его как
Func, когда вы вызываетеten, он еще не вызван.Для его выполнения необходимо использовать
.Invoke()
Console.WriteLine(ten.Invoke());Или использовать экземпляр делегата
Console.WriteLine(ten());
Попробуйте
Console.WriteLine(ten()):Вы печатаете строковое представление объекта
Func. Но вы должны вызвать его, используя()
Comments