متد دارای چند خروجی - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

متد دارای چند خروجی

0 امتیاز

سلام

 یه توضیح در مورد متدهای دارای چند خروجی در سی شارپ با یه مثال ساده می خواستم

ممنون

سوال شده خرداد 31, 1393  بوسیله ی امیدوار (امتیاز 872)   21 63 76
ویرایش شده خرداد 31, 1393 بوسیله ی امیدوار

1 پاسخ

+2 امتیاز
 
بهترین پاسخ

سلام

شما میتونید مقدار خروجی رو یک شی یا یک ساختار درنظر بگیری و چند مقداررو به خروجی بفرستی یا از پارامترهای نوع out استفاده کنی

 

 // روش اول

class result
{
 public string name;
 public int number;
}

public result test()
{
  result r = new result();
 r.name = "ali";
 r.number = 76;
 return r;
}


 result r = test();
 console.write(r.name,r.number);

// روش دوم

pulic void test(out string name,out int number)
{
 name = "ali";
 number = 76;
}

string name;
int number;
test(out name,out number);
console.write(name,number);


 

پاسخ داده شده خرداد 31, 1393 بوسیله ی alixw24 (امتیاز 656)   2 5 13
انتخاب شد خرداد 31, 1393 بوسیله ی امیدوار
سلام
از روش دوم استفاده می کنم نمیدونم چرا ایراد می گیره عکس و براتون میفرستم یه نگاه بندازین
خطاش حل شد ولی عدد رو بر نمی گردونه
عکس خطای برنگردوندن عدد رو براتون میفرستم یه نگاهی بندازین ممنون
عدد رو تو خروجی چاپ نمی کنه!!!!!!
سلام دوست عزیز دستور خروجی زیر رو
console.write(name,number)
به
console.write(name + " " + number);
تغییر بده
دلیل اینکه نشون نمیده اینه که نمایش پارامتر دوم مشخص نشده بود .
موفق باشی
سلام
بله دوست عزیز درست شد
به جز این نمونه ها هم متدی وجود داره که چند تا خروجی داشته باشه
البته معذرت می خوام از خدمت شما متدی وجود داره که خروجی out نداشته باشه و یک شی یا ساختار هم نباشه و فقط قائده قانون خودشو داشته باشه یعنی ساخته شده باشه بره همین کار?
اینم امتحان کردم جواب داد
Console.Write("{0}{1}",s, num);
بابت لطفتون از شما بسیار تشکر می کنم امیداوارم که همیشه موفق باشید
خواهش میکنم دوست عزیز
باز هم اگه متد دیگه ای هم بود که بدون این قواعد و قانونها و فقط به منظور برگرداندن چند خروجی ایجاد شده باشد
من رو هم در جریان بزارین ممنون
ناگفته نمونه که روش اولتون خیلی جالبه
حتما .
میتونی از ارسال با مرجع هم استفاده کنی
دارم آپدیت میکنم تموم شد نمونه میزارم
از بابت لطفتون ممنونم
...