Problem z klasa

0

Siema ma taki problem:
Mam taka klase:
class Chromosom
{
public:
int *kod;
int rozmiar;
Chromosom(int[]=0,int=0);
~Chromosom(){delete []kod;}
};

Chromosom::Chromosom(int dane[],int size)
{
rozmiar=size;
kod=new int[size];
for(int i=0;i<rozmiar;i++) kod[i]=dane[i];
}

potem w drugiej klasie tworze tablice Chromosomow:
Chromosom *populacja;
populacja=new Chromosomsize_populacja;

gdzie tworzenie drogi zwraca mi *int i size_chromosom to tez int.
no i wyskakuje mi blad:

Error: komiwijadzer.cpp(107,42):Array allocated using 'new' may not have an initializer

Co to moze byc???Juz siedze nad tym godzine i nie moge tego rozkminic.Wielki dzieki z góry za odpowiedz :]

0

JA niestety nie potrafie Ci pomoc ale rozumiem ze probujesz zaimplementowac problem komiwojażera przy pomocy algorytmu genetycznego, wiec jesli Ci sie uda nie omieszkam looknac na kod :]

0

populacja=new Chromosomsize_populacja;

Error: komiwijadzer.cpp(107,42):Array allocated using 'new' may not have an initializer

Postaraj sie zostawić konstruktor domyslny, a dotychczasowe jego zadania powiezyc np. metodzie Init();

Wtedy alokacja pamieci i inicjowanie beda wygladac tak:

populacja=new Chromosom[size_populacja];
for(int i=0;i<size_populacja;i++)
Chromosom[i].Init(tworzdroge(size_chromosom),size_chromosom);

Pozdrawiam i mam nadzieje, ze trafilem ;)

0

Super pomysł [!!!]
Wielkie dzięki.Teraz już działa jak należy.Jeszcze raz dzięki... [browar]

1 użytkowników online, w tym zalogowanych: 0, gości: 1