[ LUGOS ] c++ problemi s kazalci

Marko Bukovec marko.bukovec na guest.arnes.si
Pon Jan 4 18:51:37 CET 1999


On Mon, 04 Jan 1999, you wrote:
>>rabim v bistvu dinamicno tabelo, katere dolzina elementov se spreminja to
>pa
>>lahko dosezem le s kazalcem na tabelo kazalcev (drugace mi ze sama tabela
>>kazalcev pobere prevec prostora)
>
>Rabis torej polje kazalcev, od katerih vsak kaze na dolocen objekt in
>objekti
>so razlicno veliki? Prav razumem? Za kaksne objekte gre?
imam razred crka, ki mora kazat naprej na objekte istega razreda (ergo crka)
naslednji prog dela bp, samo da vse skupaj rezerviram zunaj razreda..

#include <iostream.h> 
 
class crka { 
public: 
  char ime; // za katero crko je ta objekt 
  unsigned int f;    // frekvenca ponavljanja 
//  crka **p; 
 
  crka(char c, unsigned int i=1) { ime=c; f=i; }; 
  void izpisi_se(void); 
  void povecaj_se(void) { f++; }; 
}; 
 
void crka::izpisi_se(void) { 
  cout << "(" << ime << ", " << f << ") \n"; 
} 

void main() {
  crka **c;               // kazalec na tabelo kazalcev 
  int all=25; 
  c = new (crka*)[all];     // inicializiramo kazalce = prostor za kazalce
  for (int i=0; i<all; i++) 
    c[i]=new crka('a'+i);     // inicializiramo crke, tako da kazalci kazejo nanje 
 
  for (int i=0; i<25; i++) 
    c[i]->izpisi_se(); 

  for (int i=0; i<all; i++) 
    delete c[i];  // brisemo kazalce 
  delete c;   // brisemo tabelo 
}

jaz pa rabim kao drvesno strukturo tako da se po potrebi tabela kazalcev
poveca (recimo all=26); kazalci v novi tabeli pa kazejo na iste crke kot prej
le da imamo moznost rezervitat prostor za se eno novo crko

to je vsa poanta ...

bye de Marko




Dodatne informacije o seznamu Starilist