私はアクションが実行されたときに何かを記録する拡張メソッドを持っています。実装はそうのようなものです:アクションとアクションを一般化する方法はありますか<T>?
public static Action Log(this Action action, string log) {
return (() => {
Console.WriteLine(log);
action();
});
}
しかし、私はまたAction<T>
するアクションを許可します。これを一般化する方法があるので、log
が記録されますが、アクションの署名は変更されませんか?
また、Action
とAction<T>
の2つの方法が必要ですか?
をうん、スウィフトは、やってできますそれは 'Void'はそれ自身のデータ型です。私はC#もこれを可能にするかどうか疑問に思っていた。 – vrwim