Доступ к делегатам в методе - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь реализовать один интерфейс, и у него есть такой метод

public object GetOrCreate<T>(string key, Func<ICacheEntry, T> func)
{

}

Из объявления метода я нахожу, что ICacheEntry и объект общего типа T передан. Может быть, кто-то может помочь понять, как получить доступ к этим двум параметрам в методе?

1 Ответ

0 голосов
/ 03 октября 2019

Вот так:

public object GetOrCreate<T>(string key, Func<ICacheEntry, T> func)
{
   ICacheEntry someCacheEntry = ...;

   T someTinstance = func(someCacheEntry);

   return (object)someTinstance;
}

func - это параметр метода делегата.

https://www.tutorialsteacher.com/csharp/csharp-func-delegate

T - это параметр общего типа, этона самом деле это не тип, это заменяемый параметр паспарту для неизвестного типа. T происходит от слова template .

Возможно, вы захотите прочитать эти уроки:

C # Generics Level 1

C # Общий уровень 2

Общий в .NET

Для изучения C #:

C # Tutorial Level 0

Уровень обучения C # 1

Уровень обучения C # 2

Уровень обучения C # 3

Фрагменты C # @ Techi.io

Начало программирования на Visual C # 2008 (книга)

...