PDA

View Full Version : سوال: func<> چیست ؟ کاربردش در کجاهاست ؟



mohammad meta
یک شنبه 29 فروردین 1389, 12:48 عصر
سلام
کسی در مورد کلمه کلیدی func<> چیزی میدونه ؟
آیا همون delegate است ؟
کاربردش در کجاهاست ؟
مثلا کد زی را ببینید
دلیل خروجی 0 و1 چیست ؟؟؟؟؟؟

static Func<int> Natural()
{
int seed = 0;
return () => seed++;
// Returns a closure
}

اَرژنگ
یک شنبه 29 فروردین 1389, 13:04 عصر
سلام
کسی در مورد کلمه کلیدی func<> چیزی میدونه ؟
آیا همون delegate است ؟
کاربردش در کجاهاست ؟
مثلا کد زی را ببینید
دلیل خروجی 0 و1 چیست ؟؟؟؟؟؟

static Func<int> Natural()
{
int seed = 0;
return () => seed++;
// Returns a closure
}


خیر دلگت نیست، یک دلگت بخصوصه: http://msdn.microsoft.com/en-us/library/bb549151.aspx
در ضمن ، کلمه کلیدی نیست.

در ضمن اون کد مثالی که فرستادید را از کجا پیدا کردید واقعاً گیج کنند است، مثال کد باید به درک کمک کنه، اون کد به گیجی کمک میکنه.

mohammad meta
یک شنبه 29 فروردین 1389, 13:11 عصر
با سلام وتشکر
اون قطعه کد برای آموزش قسمتی از lambda expression ها ست گیج کننده نیست برای فهماندن یک مطلب !
این مثال در کتاب c# in a nutshell فصل lambda exp است.

اَرژنگ
یک شنبه 29 فروردین 1389, 13:15 عصر
با سلام وتشکر
اون قطعه کد برای آموزش قسمتی از lambda expression ها ست گیج کننده نیست برای فهماندن یک مطلب !
این مثال در کتاب C#‎‎‎ in a nutshell فصل lambda exp است.

چه مطلبی؟ سوالی که روش کار میکنه چیه؟ چونکه برایه یادگیری استفاده از Func<> بیشتر گیج میکنه تا مطلبی را روشن کند.

mohammad meta
یک شنبه 29 فروردین 1389, 13:15 عصر
من نمو دونم درست متوجه شدم یا نه ؟
یعنی یک function pointer است که برای ارسال یک متد به عنوان پارامتر ازش استفاده میشه ؟؟؟

mohammad meta
یک شنبه 29 فروردین 1389, 13:20 عصر
چه مطلبی؟ سوالی که روش کار میکنه چیه؟ چونکه برایه یادگیری استفاده از Func<> بیشتر گیج میکنه تا مطلبی را روشن کند.
سوال نیست !
در مورد
Capturing Outer Variables
در لامبدا است .
قسمت جالبی در مورد رفتار variable ها در زمان استفاده از lambda exp است.

اَرژنگ
یک شنبه 29 فروردین 1389, 15:12 عصر
من نمو دونم درست متوجه شدم یا نه ؟
یعنی یک function pointer است که برای ارسال یک متد به عنوان پارامتر ازش استفاده میشه ؟؟؟

هم بله و هم خیر!
از یک لحاض شبیه همان فانکشن پوینتر است ولی خیر برایه اینکه:
در دات نت ما بهشان دلگت میگیم، و دلگتها خودشان به شکل یک کلاس وجود دارند و خصوصیتاتی و متدهایی بیشتر از فانکشن پوینترها که در سی++ و دلفی میشناسید دارند.