Szablony klasy i funkcji. Błędy zwracania zmiennej
Ostatnio zmodyfikowano 2014-04-14 18:20
stryku Temat założony przez niniejszego użytkownika |
Szablony klasy i funkcji. Błędy zwracania zmiennej » 2014-04-14 15:11:46 Cześć. Mam taką oto klasę: template < class T > class lista { public: T pop_back() { T ret; if( costam ) { return ret; } return ret; } };
i problem taki jak napisałem w komentarzu. W VS przechodzi bez tego zwracania, ale jak wysyłam na stronkę inną to tam kompilator krzyczy, że muszę zwracać zawsze, a jak zwracam tak to, że zwracam nie użytą zmienną; |
|
pekfos |
» 2014-04-14 15:27:08 Musisz zwracać zawsze, niezależnie od tego, czy kompilator to przepuści, czy nie. |
|
DejaVu |
» 2014-04-14 16:00:42 Nawet gdyby to była zwykła funkcja to ostrzeżenie lub błąd otrzymałbyś w sytuacjach, które opisałeś. |
|
stryku Temat założony przez niniejszego użytkownika |
» 2014-04-14 16:23:10 Wiem, że muszę zwracać. Dlatego piszę tutaj bo nie wiem jak zwrócić coś "uniwersalnego" co będzie pasowało do wszystkich szablonów. Do double, inta, boola itp. Co zwrócić? |
|
DejaVu |
» 2014-04-14 16:54:58 Jak już to ewentualnie:
T pop_back() { if( empty() ) return T(); T ret; return ret; }
PS. Wklej błędy kompilacji bo temat powinien zawierać błąd kompilacji, a nie słowno muzyczny opis problemu (w dodatku niezbyt precyzyjny). |
|
Monika90 |
» 2014-04-14 18:20:02 Nie musisz nic zwracać, możesz rzucić wyjątek. |
|
« 1 » |