Denkfehler! Hilfe! (nicht alle Codepfade geben einen Wert zurück)

exiter28

Erfahrenes Mitglied
Hallo,

könntet Ihr mir bei folgender Funktion weiterhelfen?
Ich komm grad nicht weiter.....
Fehlermeldung: nicht alle Codepfade geben einen Wert zurück
Die Rückgabe sollte 'filter' sein.

Danke Euch....

Code:
        public static string SetFilter(String line)
        {
            string l = line;
            string filter = "";
            int f = Convert.ToInt32(l.Length);

            string searchstr, temp;

            for (int i = 0; i < f; i++)
            {
                temp = Right(line, i);
                try
                {
                    searchstr = Left(temp, 1);
                    if (searchstr == "=")
                    {
                        filter = Right(line, temp.Length - 1);
                        searchstr = null; temp = null;
                        return filter;
                    }
                }
                catch { }
            }
            searchstr = null; temp = null;
        }
 
ok, ich hab´s:


Code:
        public static string SetFilter(String line)
        {
            string l = line;
            string filter = "";
            int f = Convert.ToInt32(l.Length);
 
            string searchstr, temp;
 
            for (int i = 0; i < f; i++)
            {
                temp = Right(line, i);
                try
                {
                    searchstr = Left(temp, 1);
                    if (searchstr == "=")
                    {
                        filter = Right(line, temp.Length - 1);
                        searchstr = null; temp = null;
                    }
                }
                catch { }
            }
            searchstr = null; temp = null;
            return filter;
        }
 
Hi.

Du mußt dir überlegen was du zurückgibst wenn du in der Schleife keine Übereinstimmung findest.

Gib doch einfach null zurück falls die Schleife ohne Übereinstimmung beendet wird. Oder du wirfst eine Ausnahme wenn deiner Meinung nach immer eine Übereinstimmung gefunden werden müßte.

Gruß
 

Neue Beiträge

Zurück