PDA

View Full Version : مبتدی: خطای not all code paths return a value در تعریف متد



programming70
یک شنبه 30 آبان 1389, 19:03 عصر
درود بر برنامه نویسان;
مشکل چیه ؟
تو هر مقاله کتابی هم جست جو کردم عین دستور من رو نوشته;
یا اینکه چون مسلط نیستم نمیفهمم مشکلم کجاست;

b.mahsa
یک شنبه 30 آبان 1389, 19:27 عصر
تعریف تابتون که درسته. مشکلی نداره.
روش که می ایستید. متن errorش چیه.؟

programming70
یک شنبه 30 آبان 1389, 19:32 عصر
نه دوست من ، وقتی مینویسمش این خط قرمز زیرش میاد ، اول فکر کردم شاید جای نا درستی گذاشتمش ، اما هر جایی هم که میزارمش همینه;

mahdi87_gh
یک شنبه 30 آبان 1389, 19:36 عصر
تعریف تابتون که درسته. مشکلی نداره.
روش که می ایستید. متن errorش چیه.؟

دوست عزیز منظور ایشون اینه که وقتی موس رو روی خط قرمز شده نگه میدارید، متن خطا چیه؟؟
توی پنجره ErrorList هم متن خطا رو نشون میده

programming70
یک شنبه 30 آبان 1389, 19:37 عصر
این اررور رو میده ;

programming70
یک شنبه 30 آبان 1389, 19:44 عصر
از این نیست که من دو تا متغییر رو فرستادم به تابع و یک متغییر رو فراخوانی میکنمی ؟

hadi-z
یک شنبه 30 آبان 1389, 19:46 عصر
تابع شما باید یه مقداری رو return کنه
به همین خاطر error میده
البته خارج از دستور if

Salar Ashgi
یک شنبه 30 آبان 1389, 19:51 عصر
ببینید اولین اشکال شما اینه که متغیرهای a,b در دوجا تعریف شده اند ، یکی پارامترهای تابع و یکی داخل کلاس ؛ که این خود مشکل ساز است .
دوم اینکه مقدار برگشتی تابع شما فقط در صورت برقرار بودن شرط هست ، در غیر اینصورت هیچ مقدار برگشتی
تابع شما نخواهد داشت و این خطای داده شده به خاطر همین است .
اینطور که پیداست متودی بازگشتی جهت به توان رساندن نوشته اید ، که بهتره بشکل زیر نوشته بشه :


int myPow(int a, int b)
{
if (b == 0)
return 1;
else
return a * myPow(a, b - 1);
}


موفق باشید ./

milad222
دوشنبه 21 آذر 1390, 00:18 صبح
من هم همین مشکل رو داشتم.
حل شد.
این خطا بخاطر اینه که return نباید توی if قرار بگیره من توی متدم if و else if داشتم، وقتی return ها رو از if خارج کردم و بصورت یک return توی متدم نوشتم، مشکلم حل شد.
در ضمن من نمونه تقریبا شبیه عکس شما رو ساختم، خطا داد. ولی وقتی متد tavan رو خارج از متد مربوط به textbox ساختم، بدون خطا اجرا شد.
79061