Not all code paths return a value hatası genelde geriye değer gönderen metotlarda değer gönderilmediği zamanlarda ya da değer göderen return ifadesinin yanlış ya da eksik kullanılması gibi durumlarda ortaya çıkar.
Örneğin aşağıdaki metodu bu haliyle çalıştırmaya çalışırsak bu hatayla karşılaşmamız kaçınılmaz olur.Metodun türü burada integerdır. Bu durumda bu metodun geriye int bir değer göndermesi gerekir. İf ifadelerinin içinde değer döndürüyor olmak işimizi görmez çünkü program bu methodun if blokları arasına girmemesi durumunda ne döndüreceğini bilmek ister.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
public int Islem(int a,int b,string d) { int sonuc=0; if (d == "+") { return sonuc = a + b; } else if (d == "-") { return sonuc = a - b; } else if (d == "*") { return sonuc = a * b; } else if (d == "/") { return sonuc = a / b; } } |
Hatadan kurtulmanın yolu ise değeri doğru türde ve doğru yerde göndermek olur.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
public int Islem(int a,int b,string d) { int sonuc=0; if (d == "+") { sonuc = a + b; } else if (d == "-") { sonuc = a - b; } else if (d == "*") { sonuc = a * b; } else if (d == "/") { sonuc = a / b; } return sonuc; } |
Soru ve görüşleriniz için yorum yapabilirsiniz. Kolay gelsin .. 🙂
Teşekkürler.