Thread View: pl.comp.programming
2 messages
2 total messages
Started by SHY... Piotr
Tue, 02 Apr 1996 00:00
Jak zrobic tablice dwuwymiarowe operatorem new w C++
Author: SHY... Piotr
Date: Tue, 02 Apr 1996 00:00
Date: Tue, 02 Apr 1996 00:00
17 lines
806 bytes
806 bytes
Mam pewien problem. Ale najpierw krotki program w C++
void main()
{
int a=12;
int *wsk=new int[a];
}
Jak widac ten program umozliwia wpisanie wymiaru tablicy jednowymiarowej w
czasie dzialania programu. Dziala on oczywi�cie poprawnie. Nie wiem jednak
jak zrobic to w tablicach dwuwymiarowych. Ponizszy progam nie dziala. Nie
wiem dlaczego.
void main()
{
int a=12;
int *wsk=new int[a][a];
}
Re: Jak zrobic tablice dwuwymiarowe operatorem new w C++
Author: Artur Lipowski
Date: Tue, 02 Apr 1996 00:00
Date: Tue, 02 Apr 1996 00:00
29 lines
1363 bytes
1363 bytes
Piotr wrote:
> Jak widac ten program umozliwia wpisanie wymiaru tablicy jednowymiarowej w
> czasie dzialania programu. Dziala on oczywižcie poprawnie. Nie wiem jednak
> jak zrobic to w tablicach dwuwymiarowych. Ponizszy progam nie dziala. Nie
> wiem dlaczego.
>
> void main()
> {
> int a=12;
> int *wsk=new int[a][a];
> }
Sprobuj tak:
int **wsk=new *int[a];
for (int i=0; i < a; i++)
wsk[i] = new int[a];
Oczywiscie trzeba potem zwolnic pamiec w podobny sposob.
Mozna tez przydzielic pamiec w ten sposob:
int *wsk = new int[a*a];
i dalej odpowiednio przeliczac indeksy.
Mozna tez uzyc/napisac klase typu tablica n wymiarowa ukrywajac powyzsze szczegoly
w implementacji i dodajac eleganckie operatory [].
Wybor nalezy do Ciebie.
--
Pozdrawiam,
Artur Lipowski
The Polished Group Ltd.
ar...@tpg.krakow.pl
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads