ফাঙ্ক জেনেরিক টাইপ বেনামী পদ্ধতি সঞ্চয় করে এবং এটি একটি প্যারামিটারাইজড টাইপ।
নীচের উদাহরণে, আমাদের কাছে 4টি ফাঙ্ক টাইপ ইনস্ট্যান্স রয়েছে -
প্রথম প্রকারটি int গ্রহণ করে এবং স্ট্রিং প্রদান করে
Func<int, string> one = (p) => string.Format("{0}", p); দ্বিতীয় প্রকার বুল এবং লং গ্রহণ করে এবং স্ট্রিং প্রদান করে
Func<bool, long, string> two = (q, p) =>string.Format("{0} and {1}", q, p); তৃতীয় প্রকার bool এবং int গ্রহণ করে এবং স্ট্রিং প্রদান করে
Func<bool, int, string> three = (q, p) => string.Format("{0} and {1}", q, p); চতুর্থ প্রকার দশমিক এবং রিটার্ন স্ট্রিং গ্রহণ করে
Func<decimal, string> four = (p) =>string.Format("{0}", p); আসুন দেখি কিভাবে সেগুলো প্রদর্শন করতে হয় −
উদাহরণ
using System;
using System.IO;
namespace Demo {
class Program {
static void Main(string[] args) {
// four func type instance
// first type receives int and returns string
Func<int, string> one = (p) =>
string.Format("{0}", p);
// second type receives bool & long and returns string
Func<bool, long, string> two = (q, p) =>
string.Format("{0} and {1}", q, p);
// three type receives bool & int and returns string
Func<bool, int, string> three = (q, p) =>
string.Format("{0} and {1}", q, p);
// fourth type receives decimal and returns string
Func<decimal, string> four = (p) =>
string.Format("{0}", p);
Console.WriteLine(one.Invoke(25));
Console.WriteLine(two.Invoke(false, 76756566));
Console.WriteLine(three.Invoke(true, 50));
Console.WriteLine(four.Invoke(1.2m));
}
}
} আউটপুট
25 False and 76756566 True and 50 1.2