res*_*sgh 2 c# constructor delegates pass-by-reference
嗨我有一个代理作为参数的类,如代码所示,但我得到错误"错误1类型预期...\Classes\Class1.cs 218 33类"和"错误2;预期......\Classes\Class1.cs 218 96 Classes".我该如何解决这个问题?提前致谢!我试图传递它byref所以当一个类初始化时,它的一些方法附加到委托.
public constructor(ref delegate bool delegatename(someparameters))
{
some code
}
Run Code Online (Sandbox Code Playgroud)
现在什么都没有,它有效,tkx
您不能在构造函数中声明委托类型.您需要首先声明委托类型,然后您可以在构造函数中使用它:
public delegate bool delegatename(someparameters);
public constructor(ref delegatename mydelegate)
{
some code...
}
Run Code Online (Sandbox Code Playgroud)
你可以通过类似的东西Action<T>......不知道为什么你想通过引用传递它.例如,您可以使用以下方法:
static void Foo(int x, Action<int> f) {
f(x + 23);
}
Run Code Online (Sandbox Code Playgroud)
并称之为:
int x = 7;
Foo(x, p => { Console.WriteLine(p); } );
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16124 次 |
| 最近记录: |