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