Problem z wywołaniem metody za pomocą pętli
Ostatnio zmodyfikowano 2016-01-25 18:02
Matei Temat założony przez niniejszego użytkownika |
Problem z wywołaniem metody za pomocą pętli » 2016-01-25 16:59:16 Mam problem z wywołaniem tablicy obiektów za pomocą pętli. Po wpisaniu danych, przechodzi mi do pętli for i "Dzieją się rzeczy niestworzone". Konsola zaczyna szaleć, a komputer pika :D #include<iostream> #include "Klasa.h"
using namespace std;
int main() { int * ile; ile = new int; cout << "Jak dluga jest kolejka?" << endl; cin >> * ile; cout << * ile; CCzlowiek kolejka[ * ile ]; for( int i = 0; i <* ile; i++ ) kolejka[ i ].PrzedstawSie(); delete ile; }
Jak coś to mogę jeszcze udostępnić kod Klasa.h |
|
carlosmay |
» 2016-01-25 18:02:15 CCzlowiek kolejka[ * ile ]; |
Wg standardu rozmiar deklarowanej tablicy statycznej musi być wartością stałą. Zadeklaruj tablicę dynamiczną lub skorzystaj z STL np. std::vector<>. np. struct Czlowiek { std::string name; void PrzedstawSie() { std::cin >> name; } void wypisz() const { std::cout << name << std::endl; } };
int main() { int * ile = new int; std::cout << "Jak dluga jest kolejka?" << std::endl; std::cin >> * ile; std::cout << * ile; Czlowiek * kolejka = new Czlowiek[ * ile ]; for( int i = 0; i <* ile; i++ ) kolejka[ i ].PrzedstawSie(); for( int i = 0; i < * ile; ++i ) kolejka[ i ].wypisz(); delete[] kolejka; delete ile; return 0; } |
|
« 1 » |