[C++]Funkcja kończy się zamiast zwracać elementy tabeli
Ostatnio zmodyfikowano 2015-12-28 16:24
Burto Temat założony przez niniejszego użytkownika |
[C++]Funkcja kończy się zamiast zwracać elementy tabeli » 2015-12-28 15:30:26 Witam. Próbuję napisać funkcję która zwróci wszystkie elementy tabeli przy pomocy return: sf::FloatRect kolizje[ 5000 ];
sf::FloatRect TabelaKolizji() { for( int i = 0; i < sizeof( kolizje ) - 1; i++ ) { std::cout << "Przed return\n"; return kolizje[ i ]; std::cout << "Po return\n"; } }
int main() { kolizje[ 50 ] = { sciana1.getGlobalBounds(), }; }
Niestety funkcja kończy się w momencie zwracania wartości kolizje . |
|
carlosmay |
» 2015-12-28 15:44:59 return kolizje[ i ]; tak zwraca wartość tego konkretnego elementu. Jak ma być całość, to przekaż tablicę i ją nadpisz lub utwórz dynamicznie tablicę i zwróć wskaźnik na tą tablicę. Niestety funkcja kończy się w momencie zwracania wartości kolizje. |
Do tego służy słowo kluczowe return . |
|
Burto Temat założony przez niniejszego użytkownika |
» 2015-12-28 16:16:05 Dziękuję za pomoc, lecz w programowaniu jestem nowy i nie bardzo wiem jak mam to zrobić. Czy mógłbym prosić o jakiś poradnik w jaki sposób mam to wykonać? |
|
Gibas11 |
» 2015-12-28 16:24:08 Zakładam, że ilość elementów się waha? Użyj std::vector < sf::FloatRect > z #include <vector> . |
|
« 1 » |