PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_Sharp
[问题] lumbda的用法
楼主:
tyc5116
(累人啊....)
2018-11-12 21:16:30
抱歉,最近刚从别的语言转过来C#
看到这样的lambda表达式有些地方不太懂
public string AAA
{
get
{
return this.GetValue(() => this.AAA)
}
set
{
this.SetValue(() => this.AAA, value)
}
}
protected T GetValue<T>(Expression<Func<T>> property)
{...}
protected bool SetValue<T>(Expression<Func<T>> property, T value)
{...}
主要是不懂红色括号那是什么意思
google找到https://ithelp.ithome.com.tw/articles/10100451
这网页的说明也让我有类似的疑惑,function内template的型态数量感觉对不起来
再麻烦版友帮解答一下,谢谢
作者: t64141 (榕树)
2018-11-12 21:23:00
Func 的最后一个型别参数是回传的参数型别, 其他是输入的参数型别红色括号中带入的是传入的型别参数,本例不需要传入型别参数, 所以红色括号中是空的
作者:
testPtt
(测试)
2018-11-12 21:35:00
其实lumbda很多语言都有
作者:
james732
(好人超)
2018-11-12 21:45:00
Google找"C# lambda"有很多网页可以看
楼主:
tyc5116
(累人啊....)
2018-11-12 21:49:00
基本的lambda表达式google后是看的懂,只是这里是和它的参数Expression<Func...这个对不起来这是要先懂LINQ才知道这个的意思是吗?
作者:
CloudyWing
(孤单ㄉ翼)
2018-11-12 21:56:00
LINQ是LINQ,Lambda是Lambda,别混回一谈每次听到有人问LINQ写法和Lambda写法分别是哪种就...Expression是封装delegate的一个型别
作者:
testPtt
(测试)
2018-11-12 22:02:00
你可能要了解Generic
作者:
CloudyWing
(孤单ㄉ翼)
2018-11-12 22:02:00
所以SetValue()有两个参数,型别分别为Expression和T() => this.AAA (Expression), value (T)觉得对不起来,应该是把Generic Type当成参数了
作者:
vi000246
(Vi)
2018-11-13 00:06:00
这个叫委派喔
https://goo.gl/SgWu4f
你先把括号还原成1.0的写法 再对照Func<T>来看就知道T代表什么了
作者:
neo5277
(I am an agent of chaos)
2018-11-13 17:34:00
可以去写一下javascript感受应该会挺深的
作者:
testPtt
(测试)
2018-11-13 19:10:00
我觉得你的问题可能不是lambda 刚好有人提到js你可能是想知道Expression干嘛用的:当作直译器就好
继续阅读
[问题] null问题
GooLoo
如何共用参数
tree581
[问题] method 代入 Attributes
abc95007
[问题] 使用npoi插入一列
sicao
wpf datagrid问题
GooLoo
[问题] 如何修改网卡速度
a2975313
wpf的numericUpDown
GooLoo
[问题] 求助询问WPF自动更新
xsonicx
datagrid in wpf
GooLoo
[问题] 求助ERP工程师分享经验
sun3747
Links
booklink
Contact Us: admin [ a t ] ucptt.com