05. august 2002 - 20:32
Der er
8 kommentarer og 1 løsning
Få data ud af mit liste-objekt
Hej jeg kan ikke ikke få en af mine variabler ud af mit liste objekt.. list<Bedstesaelger> BS: Indeholder tre varieabler, nemlig to string og en float.. Det er floaten som ikke kommer ud når jeg kører listen igennem med min iterator.. for(i1=BS.begin();i1 !=BS.end();i1++) { MedarbejderNavn=i1->Hent_MedarbejderNavn().c_str(); SamletSalg=i1->Hent_samlet_salg(); Medarbejdernr=i1->Hent_MedarbejderNr().c_str(); Medarbejdernavn og MedarbejderNr kommer fint ud, men der sker ingenting med SamletSalg... WHY?? Det skal lige nævnes at dataerne går fint ind som jeg har checkket ved debuging.. Lasse
Annonceindlæg fra DE-CIX
05. august 2002 - 20:50
#1
tror du ikke det er dine klasse den er gal med?
05. august 2002 - 20:54
#2
Nej, den fejler ikke noget.. class BedsteSaelger { public: BedsteSaelger(); BedsteSaelger(float,string,string);//Til liste objekter const float Hent_samlet_salg()const{return SamletSalg;} const string Hent_MedarbejderNavn()const{return MedarbejderNavn;} const string Hent_MedarbejderNr()const{return MedarbejderNr;} //Retunere de 5 bedste sælgeres ID nr... void Find_bedste_saelgere(String); void SaetMedarbejderAtributter(String); private: float SamletSalg; string MedarbejderNavn; string MedarbejderNr; };
06. august 2002 - 10:06
#3
Har du implementeret din constructor således? BedsteSaelger(float fSalg, string strNavn, string strNr) : SamletSalg(fSalg), MedarbejderNavn(strNavn), MedarbejderNr(strNr) { }
06. august 2002 - 10:07
#4
Du bliver vist nødt til at poste lide mere kode...
06. august 2002 - 11:35
#5
Umiddelbart ville jeg også mene at fejlen må ligge i klasse implementationen.
06. august 2002 - 12:50
#6
Medarbejdernavn og medarbejderne virker fint, det er kun det s... samletsalg som ikke vil komme ud af listen igen.. Men den melder ingen fejl eller noget.. Havde der været noget galt med initialiseringen havde det jo ikke kunnet køre..
06. august 2002 - 13:09
#7
Det her virker... #include "stdafx.h" #include <string> #include <list> using namespace std; class BedsteSaelger { public: BedsteSaelger(float fSalg, string strNavn, string strNr) : SamletSalg(fSalg), MedarbejderNavn(strNavn), MedarbejderNr(strNr) {} const float Hent_samlet_salg()const{return SamletSalg;} const string Hent_MedarbejderNavn()const{return MedarbejderNavn;} const string Hent_MedarbejderNr()const{return MedarbejderNr;} private: float SamletSalg; string MedarbejderNavn; string MedarbejderNr; }; int main(int argc, char* argv[]) { list<BedsteSaelger> BS; BS.push_back(BedsteSaelger(123.456f, "Name", "Number")); list<BedsteSaelger>::iterator i1; for(i1=BS.begin(); i1!=BS.end(); i1++) { i1->Hent_MedarbejderNavn().c_str(); i1->Hent_samlet_salg(); i1->Hent_MedarbejderNr().c_str(); } return 0; }
07. august 2002 - 12:29
#8
Det er lige nøjagtig sådan jeg har lavet min.. Virker den der du har lavet..??
07. august 2002 - 22:41
#9
Har fundet ud af det... Havde byttet om funktionerne.. Du får 20 point for din hjælp..
Kurser inden for grundlæggende programmering