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 tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
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