class cTaulukko1 {
int lkm;
int alkiot[5];
public:
...
};
class cTaulukko2 {
int max_koko;
int lkm;
int *alkiot;
public:
...
};
class cTaulukko3 {
int max_koko;
int lkm;
int **alkiot;
public:
...
};
class cTaulukko4 {
int lkm;
int *alkiot[5];
public:
...
};
int main(void)
{
cTaulukko1 luvut(5);
luvut.lisaa(2001); luvut.lisaa(22); // Kuva tästä tilanteesta
luvut.tulosta();
return 0;
}
cTaulukko1::cTaulukko1(int iLuvut=5)
{
lkm=0;
}
cTaulukko2::cTaulukko2(int iLuvut=5)
{
lkm=0;
max_koko=0;
alkiot=new int[iLuvut];
if (alkiot) max_koko=iLuvut;
}
cTaulukko3::cTaulukko3(int iLuvut=5)
{
lkm=0;
max_koko=0;
alkiot=new int*[iLuvut];
if (alkiot) max_koko=iLuvut;
}
cTaulukko4::cTaulukko4(int iLuvut=5)
{
lkm=0;
}
void cTaulukko1::lisaa(int luku) {
if (lkm>=5) return;
alkiot[lkm]=luku;
lkm++;
}
void cTaulukko2::lisaa(int luku) {
if (lkm>=max_koko) return;
alkiot[lkm]=luku;
lkm++;
}
void cTaulukko3::lisaa(int luku) {
if (lkm>=max_koko) return;
alkiot[lkm]=new int(luku);
lkm++;
}
void cTaulukko4::lisaa(int luku) {
if (lkm>=5) return;
alkiot[lkm]=new int(luku);
lkm++;
}