Avatar billede evilfish Nybegynder
16. september 2007 - 17:02 Der er 7 kommentarer og
1 løsning

Objekter og constructorer.

Hej eksperter

Overskriften er måske forkert, men kunne ikke finde på noget bedre.

Jeg har et problem med at bruge en klasse jeg lige har lavet. I den klasse har jeg lavet en constructor, som er tom lige pt (forbliver den ikke). I denne klasse har jeg lige ledes en metode som ser således ud:

void HouseArray::typeMessage()
{
    printf("This is the array speaking!!!");
}

Jeg forsøger at test om jeg kan kalde den metode ved at gøre følgende:

int main()
{
    HouseArray *harray = new HouseArray();
    harray.typeMessage();
}

Men for denne fejl:

error C2228: left of '.typeMessage' must have class/struct/union

Hvad gør jeg galt?
Avatar billede arne_v Ekspert
16. september 2007 - 17:03 #1
harray->typeMessage();
Avatar billede arne_v Ekspert
16. september 2007 - 17:04 #2
. for klasse instanser
-> for pointere til klasse instanser
Avatar billede evilfish Nybegynder
16. september 2007 - 17:09 #3
Har det sådan her nu: HouseArray harray -> new HouseArray();
Men en ny fejl kommer frem:
error C2143: syntax error : missing ';' before '->'
Avatar billede arne_v Ekspert
16. september 2007 - 17:29 #4
HouseArray *harray = new HouseArray();
    harray->typeMessage();

eller

    HouseArray harray;
    harray.typeMessage();
Avatar billede evilfish Nybegynder
16. september 2007 - 17:31 #5
Hurtigt tillægs spørgsmål. Når man bruger:
HouseArray harray;

Bliver der så kørt en constructor?
Avatar billede arne_v Ekspert
16. september 2007 - 18:09 #6
ja
Avatar billede evilfish Nybegynder
16. september 2007 - 18:20 #7
Men tak det virker - svar venligst
Avatar billede arne_v Ekspert
16. september 2007 - 18:28 #8
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester