Tags:
c++
delphi
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
<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
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;
}
};
Ups jeg lavede en tastefejl
der skal narturligvis stå:
mvh.
Alexander Chicago</quote>