0
C#用の拡張ライブラリを作成していますが、メソッド呼び出しでコードブロックを受け入れることができるかどうかは疑問です。以下のような何か:メソッドのコードブロックを受け入れる方法C#
foo()
{
var bar = 0;
};
またはこのような何かもするだろう:
foo(
{
var bar = 0; //As an argument to the method
});
C#用の拡張ライブラリを作成していますが、メソッド呼び出しでコードブロックを受け入れることができるかどうかは疑問です。以下のような何か:メソッドのコードブロックを受け入れる方法C#
foo()
{
var bar = 0;
};
またはこのような何かもするだろう:
foo(
{
var bar = 0; //As an argument to the method
});
あなたはこれを達成するために、デリゲート/ラムダに渡すことができます。
public void foo(Action del)
{
var local = del;
if (local != null)
{
local();
}
}
foo(() =>
{
var bar = 0;
});
あなたはより多くのhere
雅を読むことができます。デリゲートを使用できます。この前の質問を参照してください:http://stackoverflow.com/questions/6866347/lambda-anonymous-function-as-a-parameter –
ありがとう@GiladGreen、それは非常に役立ちます!この質問を重複としてマークするか、回答をコメントとして追加してください。 – RhysO
なんらかの理由で答えとして追加することはできませんが、コメントとして追加します..... –