Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

tablica wskaznikow problem

Ostatnio zmodyfikowano 2012-09-10 12:33
Autor Wiadomość
rogas1990
Temat założony przez niniejszego użytkownika
tablica wskaznikow problem
» 2012-09-09 17:35:39
czesc, mam problem a mianowicie tworze sobie tablice wskaznikow w mainie na obiekty klasy stacja.

C/C++
station * pstat;


int mani()
{.
    .
    .
    pstat = new station[ N ];
   
}


w klasie stacja rowniez mam tablice wskaznikow na obiekty klasy stacja, ktory przechowuje informacje o stacjach ktore sa w jej zasiegu(nie wszystkie stacje) tworzac cos takiego:

C/C++
void get_naighbour( station * tab, int rozm )
{
    table = new station *[ getSize( rozm + 1, tab ) ];
    table[ 0 ] =& tab[ 0 ];
    for( int i = 0; i <( rozm + 1 ); i++ )
    {
        if(( distance( tab[ i ].getposx(), tab[ i ].getposy() ) ) <= 300 &&( distance( tab[ i ].getposx(), tab[ i ].getposy() ) != 0 ) )
        {
            table[ j ] =& tab[ i ];
            ++j;
        }
    }
}
      
gdzie *tab i rozm sa odpowiednio glowna tablica wszystkich stacji i jej rozmiarem

moje pytanie brzmi czy to jest dobrze(czy elementy tablicy table wskazuja na elementy tablicy tab) oraz jak sie odwolac do konkretnego parametru w table aby ten parametr zmienial sie rowniez w tablicy glownej. Probowalem w ten sposob
C/C++
void deactNeigh()
{
    for( int i = 0; i < j; i++ )
    {
        table[ i ]->activ = false;
    }
}

ale niestety nie dziala
z gory dziekuje
P-64719
DejaVu
» 2012-09-09 21:18:02
P-64737
rogas1990
Temat założony przez niniejszego użytkownika
» 2012-09-10 12:33:40
zmienilem :

C/C++
void get_naighbour( station tab[], int rozm )
{
    table = new station *[ getSize( rozm + 1, tab ) ];
    table[ 0 ] =& tab[ 0 ];
    for( int i = 0; i <( rozm + 1 ); i++ )
    {
        if(( distance( tab[ i ].getposx(), tab[ i ].getposy() ) ) <= 300 &&( distance( tab[ i ].getposx(), tab[ i ].getposy() ) != 0 ) )
        {
            table[ j ] =& tab[ i ];
            ++j;
        }
    }
}

i nadal nie dziala;/ jakies podpowiedzi
P-64754
« 1 »
  Strona 1 z 1