Construktor

Tags:    c++ delphi

User
Bruger #464 @ 23.11.01 01:14
Jeg har et problem med at få construktoren til at virke på persondatabaseklasse, er det fordi det er et array af personklasseen og det er er helt forkert at gøre sådan?? eller hvad skal der til for at det virker??
Jeg håber at der er en der har tid.
ps jeg bruger Borland C++
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <fstream.h>
const elementer=10;

class personklasse
{
private:
//hver person kan have flere telefonnummere samt hvor det er.
char telenavn[31][elementer];
int nummer[elementer];
char navn[];
int alder;
int index;
public:
personklasse (int [elementer],char* [elementer],
char* ,int ,int );

personklassse (void);
~personklasse(void)
{cout<<"Nu fjernes personen"<<endl;}
};
//*****************************************************************************
//Construktor for personklasse
personklasse::personklasse (int nr[elementer],char *t[elementer],
char *n=" ",int a=0,int in=0)
{
personklasse::nummer,nr;

int i;
for (i=0;i<elementer;i++)
{
nr=0;
}
{
personklasse::telenavn,t;
int i;
for (i=0;i<elementer;i++)

{ strcpy(telenavn,NULL); }
{ strcpy(telenavn, t);}
}
{
strcpy(personklasse::navn,n);
}
{
personklasse::alder,a;
}
{
personklasse::index,in;
}
};
// compilerer alene.
//*****************************************************************************
const antal=5;
class persondatabaseklasse:public personklasse
{
private:
personklasse database[antal];
int antal_personer;
public:
persondatabaseklasse (int nummer[elementer],char* telenavn[elementer],
char* navn,int alder,int index,personklasse database[antal],
int antal_personer);

persondatabaseklassse (void);
~persondatabaseklasse(void)
{cout<<"Nu fjernes persondatsbasen"<<endl;}
};
//Construktor for persondatabasklasse
persondatabaseklasse::persondatabaseklasse (int nr[elementer],
char* t[elementer] ,char* n,int a,int in,personklasse base[antal],
int ap=0):


personklasse(nr,t,n,a,in) // her er problemet
{
persondatabase::database,base;
int i=0;
for (i=0;i<antal;i++)
{
base=0;
}

{
persondatabaseklasse::antal_personer,ap;
}
};




2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
User
Bruger #539 @ 23.11.01 14:20
<quote>Jeg har et problem med at få construktoren til at virke på persondatabaseklasse, er det fordi det er et array af personklasseen og det er er helt forkert at gøre sådan?? eller hvad skal der til for at det virker??
Jeg håber at der er en der har tid.
ps jeg bruger Borland C++
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <fstream.h>
const elementer=10;
</quote>


Jeg ved ikke om det har noget med klassen at gøre

men du kunn jo bare lave din egne varible, kig længere ned i forumet, under den lukkede tråd, "flerdimensionelle array"
den kode virker i hvertfald og kan også bruges i dit tilfælde.


<quote>
class personklasse
{
private:
//hver person kan have flere telefonnummere samt hvor det er.
char telenavn[31][elementer];
int nummer[elementer];
char navn[];
int alder;
int index;
public:
personklasse (int [elementer],char* [elementer],
char* ,int ,int );

personklassse (void);
~personklasse(void)
{cout<<"Nu fjernes personen"<<endl;}
};
//*****************************************************************************
//Construktor for personklasse
personklasse::personklasse (int nr[elementer],char *t[elementer],
char *n=" ",int a=0,int in=0)
{
personklasse::nummer,nr;

int i;
for (i=0;i<elementer;i++)
{
nr=0;
}
{
personklasse::telenavn,t;
int i;
for (i=0;i<elementer;i++)

{ strcpy(telenavn,NULL); }
{ strcpy(telenavn, t);}
}
{
strcpy(personklasse::navn,n);
}
{
personklasse::alder,a;
}
{
personklasse::index,in;
}
};
// compilerer alene.
//*****************************************************************************
const antal=5;
class persondatabaseklasse:public personklasse
{
private:
personklasse database[antal];
int antal_personer;
public:
persondatabaseklasse (int nummer[elementer],char* telenavn[elementer],
char* navn,int alder,int index,personklasse database[antal],
int antal_personer);

persondatabaseklassse (void);
~persondatabaseklasse(void)
{cout<<"Nu fjernes persondatsbasen"<<endl;}
};
//Construktor for persondatabasklasse
persondatabaseklasse::persondatabaseklasse (int nr[elementer],
char* t[elementer] ,char* n,int a,int in,personklasse base[antal],
int ap=0):


personklasse(nr,t,n,a,in) // her er problemet
{
persondatabase::database,base;
int i=0;
for (i=0;i<antal;i++)
{
base=0;
}

{
persondatabaseklasse::antal_personer,ap;
}
};
</quote>


mvh.
Aloexander Chicago




User
Bruger #539 @ 23.11.01 14:22
personklasse(nr,t,n,a,in) // her er problemet
{
persondatabase::database,base;
int i=0;
for (i=0;i<antal;i++)
{
base=0;
}

{
persondatabaseklasse::antal_personer,ap;
}
};

Ups jeg lavede en tastefejl

der skal narturligvis stå:

mvh.
Alexander Chicago</quote>





t