17. april 2004 - 21:32
Der er
23 kommentarer og 1 løsning
hukommelses reference
Hey Vi har fået sådan en obligatorisk opgave for på skolen hvor der skal benyttes en klasse og et array. En af funktionerne har følgende: bool udtagTalFraKoe( int &vaerdi) hvordan defineres denne i headerfilen? Har forsøgt med: bool udtagTalFraKoe( int ); men det kan man ikke. Hvordan gøres det?
Annonceindlæg fra DE-CIX
17. april 2004 - 21:34
#1
bool udtagTalFraKoe( int &vaerdi); eller: bool udtagTalFraKoe( int &)
17. april 2004 - 21:37
#2
oki takker, vil du have point nu, eller vil du ikke være venlig at hjælpe mig lidt med min opgave, så hæver jeg point til 50 :)
17. april 2004 - 21:40
#3
Hvis du har flere afklarende spørgsmål må du gerne stille dem. Men jeg laver ikke hele opgaver.
17. april 2004 - 21:44
#4
Jeg har et lille array, hvorfra der skal udtages den sidst indlæste værdi Jeg har forsøgt med følgende kode, men den virker bare ikke. bool Koe::udtagTalFraKoe(int &vaerdi) { if(ledigPladsNr!=0) { ledigPladsNr--; &vaerdi=koeArray[ledigPladsNr]; ledigPladsNr++; return true; } else { return false; } } Melder fejl i linien her: &vaerdi=koeArray[ledigPladsNr]; Hvad gør jeg?
17. april 2004 - 21:44
#5
Det skal vist bare være: vaerdi = koeArray[ledigPladsNr]; uden & foran vaerdi.
17. april 2004 - 21:45
#6
Altså det jeg vil er at indlæse værdien fra koeArray[ledigPladsNr] ind i referencen &vaerdi PS. skal siges at jeg aldrig har leget med & før
17. april 2004 - 21:46
#7
Vil der være lovligt i følge opgaven? mener den der (int &vaerdig) skal være der, har den så ingen betyning eller?
17. april 2004 - 21:47
#8
Den skal være i argument listen til metoden, men ikke i assignmentet.
17. april 2004 - 21:48
#9
Det jeg reelt skal er at udtage tallet fra array'et ligge det i &vaerdi og herefter udskrive denne vaerdi. I opgaven står der: int &vaerdi: Reference til den varibel, hvor det tal, der skal udtages af køen, skal gemmes.
17. april 2004 - 21:49
#10
hvis jeg så bare skriver vaerdi = koeArray[ledigPladsNr]; Hvordan kan jeg så udskrive værdien? cout << &vaerdi; ?
17. april 2004 - 21:51
#11
Metoden erklæres med &: bool Koe::udtagTalFraKoe(int &vaerdi) Inde i metoden assignes uden &: vaerdi = koeArray[ledigPladsNr]; Og hvis du vil skrive vaerdi ud så er det også uden &: cout << vaerdi << endl;
17. april 2004 - 21:52
#12
cout << &vaerdi << endl; skriver adressen på vaerdi ud.
17. april 2004 - 21:55
#13
ahh oki, mange tak, vil nu arbejde videre med opgaven :)
Har lige smit opgaven ud på mit domæne, så kan du lige se den igennem, hvis du får tid og lyst :)
http://www.bjerrumsoft.frac.dk/download/obligatorisk opgave.doc
Skal du have point :)
17. april 2004 - 21:55
#14
17. april 2004 - 21:57
#15
Point - jo tak
17. april 2004 - 21:58
#16
ups skal jeg lige lave et spørsmål, så du kan få de sidste 20 point :)
17. april 2004 - 22:00
#17
17. april 2004 - 23:24
#18
Jeg har lige kigget opgaven igennem. Det ser nogenlunde overkommeligt ud.
17. april 2004 - 23:34
#19
naa har dog et lille problem, som jeg måske bliver nødt til at oprette et spørgsmål til. Har en del af min kode herunder. Klassen: bool Koe::udtagTalFraKoe(int &vaerdi) { bool svar; svar=erKoeTom(); if(svar==true) { ledigPladsNr--; vaerdi=koeArray[ledigPladsNr]; ledigPladsNr++; return true; } else { return false; } } og main koden. while(ikkeTom!=false) { ikkeTom=lifoKoe1.udtagTalFraKoe( &vaerdi ); if(ikkeTom==true) { cout << "vaerdi"; } else { cout << "Koen er tom"; } lifoKoe1.sletKoe(); svar=lifoKoe1.erKoeTom(); } Koden virker ikke, da den skriver: error C2065: 'vaerdi' : undeclared identifier Skal jeg definere denne værdi på forhånd eller hvordan Og hvordan får jeg den så udskrevet? Er villig til at give flere point :)
17. april 2004 - 23:40
#20
while(ikkeTom!=false) { int vaerdi; // <--- erklær vaerdi ikkeTom=lifoKoe1.udtagTalFraKoe( &vaerdi ); if(ikkeTom==true) { cout << "vaerdi"; } else { cout << "Koen er tom"; } lifoKoe1.sletKoe(); svar=lifoKoe1.erKoeTom(); }
17. april 2004 - 23:41
#21
while(ikkeTom!=false) { int vaerdi; // <--- erklær vaerdi ikkeTom=lifoKoe1.udtagTalFraKoe( vaerdi ); // <--- kald uden & if(ikkeTom==true) { cout << "vaerdi"; } else { cout << "Koen er tom"; } lifoKoe1.sletKoe(); svar=lifoKoe1.erKoeTom(); }
17. april 2004 - 23:42
#22
Vil denne variabel så blive gemt i min hukommelse ifølge definitionen for funktionen? bool Koe::udtagTalFraKoe(int &vaerdi) { bool svar; svar=erKoeTom(); if(svar==true) { ledigPladsNr--; vaerdi=koeArray[ledigPladsNr]; ledigPladsNr++; return true; } else { return false; } }
17. april 2004 - 23:48
#23
ser umiddelbart Ok ud
18. april 2004 - 00:37
#24
oki takker Næsten færdig, har bare en lille ting der driller, men det tjekker jeg op på i morgen :) Mange tak for din hjælp :)
Kurser inden for grundlæggende programmering