• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Funkcja c# zwracanie wartości

VPS Starter Arubacloud
0 głosów
3,198 wizyt
pytanie zadane 19 stycznia 2016 w C# przez Koms Początkujący (380 p.)

Witam

Mam dwa pytania do następującego kodu:

        float[] findEx(char p1, triangle p2)
        {
            float Ex, ID;            
            char par = p1;
            triangle Fig = p2;
            switch(par)
            {
                case 'x':
                    Ex = Fig.v3.x;
                    ID = 3;
                    if (Ex < Fig.v1.x )
                    {
                        ID = 1;
                        Ex = Fig.v1.x;
                    }
                    else if (Ex < Fig.v2.x)
                    {
                        ID = 2;
                        Ex = Fig.v1.x;
                    }
                    return [ID, Ex];
            }
        }

1. W instrukcji return dlaczego nie mogę zwrócić tablicy w sposób? Konieczne jest do tego stworzenie nowej zmiennej?

2. kompilator pokazuje błąd jakoby nie wszystkie ścieżki funkcji zwracają rozwiązanie, jednak nie mogę zwrócić tego rozwiązania dopóki nie sprawdzę wszystkich warunków. W jaki sposób zmusić kompilator do "przepchnięcia" takiego kodu(nie zmieniając jego działania jedynie treść)?

1 odpowiedź

+3 głosów
odpowiedź 19 stycznia 2016 przez adrian17 Ekspert (349,380 p.)

W instrukcji return dlaczego nie mogę zwrócić tablicy w sposób?

Bo ten sposób nie ma sensu. Skąd wziąłeś pomysł żeby to tak napisać? To powinno wyglądać tak:

return new[]{ ID, Ex };

jakoby nie wszystkie ścieżki funkcji zwracają rozwiązanie

Bo to prawda.

. W jaki sposób zmusić kompilator do "przepchnięcia" takiego kodu

Popraw go tak, by zawsze zwracał jakąś wartość. Albo dodaj return po switchu, albo domyślny warunek do switcha.

 

komentarz 19 stycznia 2016 przez Koms Początkujący (380 p.)
Dzięki, pomogło!

Jednak 12 h dziennie przez 2 dni z rzędu programowania wykańcza :)

Podobne pytania

0 głosów
2 odpowiedzi 647 wizyt
0 głosów
2 odpowiedzi 743 wizyt
pytanie zadane 23 stycznia 2019 w C i C++ przez thekibi27 Bywalec (2,110 p.)
0 głosów
1 odpowiedź 338 wizyt
pytanie zadane 2 maja 2017 w C i C++ przez Sensej Użytkownik (540 p.)

93,004 zapytań

141,969 odpowiedzi

321,248 komentarzy

62,340 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...