نوشته شده توسط
رامین مرادی
سلام.
دوستان امکانش هست از یک تابع چندین خروجی داشته باشیم
به این صورت :
public string int float Check(string n)
{
return "test",12,8.54;
}
یعنی میخوام بدونم امکان چنین کاری وجود داره؟
اگه آره به چه صورتی!!
این امکان تو #C نسخه 7 اضافه شده و میتونید به صورت زیر ازش استفاده کنید:
(string, string, string) LookupName(long id) // tuple return type{
... // retrieve first, middle and last from data storage
return (first, middle, last); // tuple literal
}
منبع : Blog.Msdn
اگر که به هردلیلی نمیتونید از VS 2017 استفاده کنید
بهترین راه اینه که یا از کلاس Tuple استفاده کنید که خوانایی بالایی نداره ولی کار مورد نظر شما رو انجام میده :
static void M(Tuple<string, string[], int, int[]> tuple) {
// Evaluate the tuple's items.
Console.WriteLine(tuple.Item1);
foreach (string value in tuple.Item2)
{
Console.WriteLine(value);
}
Console.WriteLine(tuple.Item3);
foreach (int value in tuple.Item4)
{
Console.WriteLine(value);
}
}
منبع : dotnetperls
و یا این که یک Class یا یک Struct بسازید و اون رو به خروجی بفرستید