在lambda函数中使用'out'参数是否有一些技巧?

cnd*_*cnd 9 c# lambda

if ( (new Func</*out*/ string, bool>( (/*out*/ string uname) => ....
Run Code Online (Sandbox Code Playgroud)

更多细节:这是登录功能的一部分,我只是希望我的lambda函数用out参数更改login-name用户,并告诉我用户登录了bool返回.

我真的明白我可以返回元组,然后得到我的字符串值,但我想要一些个人清晰度的参数.如果用户没有登录,我最好只返回null的字符串,只想知道我是否可以在lambda函数中使用参数.

而且我真的知道在语句位置上带有表达式的代码并不是那么干净但是没有人说我是否对编译器来说真的很糟糕.

Mar*_*ell 6

Lambda 表达式不起作用,但对于委托,您应该使用语句体:

bool outval = false; // definite assignment
Func<bool> func = () => {
    return SomeMethod(out foo);
};
bool returned = func();
// check both outval and returned
Run Code Online (Sandbox Code Playgroud)

对于代表......你需要定义自己的:

public delegate bool MyType(out string value);
Run Code Online (Sandbox Code Playgroud)