Witam
Mam kłopot ze zwróceniem całej tablicy z funkcji.
Oto kod:
class tasowanie
{
public:
tasowanie();
int *shuffle();
void show();
private:
static const int ilosc=52;
int *tab;
};
tasowanie::tasowanie()
{
for(int i=0;i<ilosc;i++)
tab[i]=i;
}
int tasowanie::shuffle()
{
tab=new int[ilosc];
for(int i=ilosc-1;i<0;i--)
{
int j= rand()%(i+1);
int tmp=tab[j];
tab[j]=tab[i];
tab[i]=tmp;
}
delete []tab;
return tab;
}
void tasowanie::show()
{
for(int i=0;i<ilosc;i++)
cout<<tab[i]<<" ";
cout<<endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
srand(time(0));
tasowanie();
tasowanie t;
t.show();
t.shuffle();
t.show();
system("PAUSE");
return 0;
}
Próbowałem coś z alokacją pamięci, lecz nie wiem czy robię to dobrze. Dodam, że program w takiej formie się nie kompiluje.
Z góry dziękuje za odpowiedź.
PS: Wiem, że można to napisać za pomocą vectorów STLa, ale nie chce na razie się dotykać do STLa.