[C++] Jak dostać się do dynamicznej tablicy dwuwymiarowej?
Ostatnio zmodyfikowano 2015-01-12 20:35
kojot123 Temat założony przez niniejszego użytkownika |
[C++] Jak dostać się do dynamicznej tablicy dwuwymiarowej? » 2015-01-05 22:45:53 Witam! Mam problem, nie rozumiem dlaczego nie mogę dostać się do pola tablicy dwuwymiarowej, program kompiluje się, ale podczas wykonania, zawiesza się tak jakbym chciał coś wyświetlić coś spoza zakresu. Bardzo byłbym wdzięczny za wskazanie co robię źle. I kolejne pytanie w jaki sposób mógłbym przekazać tablicę dwuwymiarową jako parametr do innej metody? #include <iostream> #include <cstdlib> #include <ctime> using namespace std;
class Tablica { public: int ** tab; Tablica( int x, int y ) { this->x = x; this->y = y; } void WygenerujLosowo(); private: int x; int y; };
void Tablica::WygenerujLosowo() { int ** tab = new int *[ y ]; for( int i = 0; i < x; i++ ) tab[ i ] = new int[ x ]; for( int i = 0; i < y; i++ ) { for( int z = 0; z < x; z++ ) { tab[ i ][ z ] =( rand() % 99 ) + 0; cout << tab[ i ][ z ] << endl; } } }
int main() { int r_kol, r_wier; cout << " Liczba kolumn: "; cin >> r_kol; cout << " Liczba wierszy: "; cin >> r_wier; cout << endl; Tablica Statystyczna( r_wier, r_kol ); cout << "Statystyczna.tab [2][2] " << Statystyczna.tab[ 2 ][ 2 ] << endl; return 0; } |
|
darko202 |
» 2015-01-06 00:47:29 1. przekazywanie tablic wielowymiarowych http://cpp0x.pl/forum/temat/?id=136542. co do efektu zawieszenia to prawdopodobnie winny jest cout<<"Statystyczna.tab [2][2] "<<Statystyczna.tab[2][2]<<endl; zastanów się czym jest Statystyczna.tab[2][2] istnieje coś takiego jak tab[2][2] ? 3. metoda void Tablica::WygenerujLosowo() zastanów się co w niej robisz ? i ile chcesz mieć wymiarów w obiekcie klasy Tablica |
|
kojot123 Temat założony przez niniejszego użytkownika |
» 2015-01-12 20:35:06 Dzięki za podpowiedź! |
|
« 1 » |