arna Skrevet 19. oktober 2005 Del Skrevet 19. oktober 2005 Hvordan skal jeg skrive tall til variablene "ost, melk, honning" ved å bruke en funksjon? #include <iostream> using namespace std; class Priser { private: int ost, melk, honning; public: Priser(); }; int main() { Priser pris1, pris2, pris3 Priser(); return 0; } Priser :: Priser() { } Lenke til kommentar
GeirGrusom Skrevet 20. oktober 2005 Del Skrevet 20. oktober 2005 (endret) du kan enten lage funskjoner som er public, eller bruke friend, men jeg har aldri fått friend til å fungere, så.... class Priser { private: int ost, melk, honning; public: Priser(); int Ost(); void Ost(int value); int Melk(); void Melk(int value); int Honning(); void Honning(int value); }; int Priser::Ost() { return ost; } void Priser::Ost(int value) { ost = value; } (osv) Jeg synes det er enklest å bruke overloading på egenskaper som dette, for å få til a = Priser.Ost(); Endret 20. oktober 2005 av GeirGrusom Lenke til kommentar
dayslepr Skrevet 20. oktober 2005 Del Skrevet 20. oktober 2005 (endret) #include <iostream> using namespace std; class A; class B { public: int sum (A& a); }; class A { public: A() { i = 1; j = 2; k = 3; } private: int i, j, k; friend class B; friend int average(A& a); }; int B::sum(A& a) { return a.i + a.j + a.k; } int average(A& a) { // lisp :) return ((a.i + a.j + a.k) / 2); } int main() { A a; B b; cout << b.sum(a) << endl; cout << average(a) << endl; return 0; } sjekk i nærmeste bok for mer detaljer -- TCPL f.eks. Endret 20. oktober 2005 av dayslepr Lenke til kommentar
Manfred Skrevet 22. oktober 2005 Del Skrevet 22. oktober 2005 Min mening er at forslaget til dayslepr var noe unødvendig, men... Forslaget til GeirGrusom er enklere å utvføre, enklere å forstå, enklere å jobbe med...osv... Lenke til kommentar
Dead_Rabbit Skrevet 22. oktober 2005 Del Skrevet 22. oktober 2005 Ved å gjøre slik som dette, kan du legge til produkter/lese fra fil under runtime. #include <iostream> #include <map> #include <string> class Priser { public: void registrer(const std::string& id, double val) { prisliste[id] = val; } double pris(const std::string& id) { return prisliste[id]; } private: std::map<std::string, double> prisliste; }; int main() { using namespace std; Priser prix; cout << "Tast inn hvilken vare du vil registrere: "; string varenavn; getline(cin, varenavn); cout << "Tast inn varens pris: "; double pris; cin >> pris; prix.registrer(varenavn, pris); cout << varenavn << " koster " << prix.pris(varenavn) << endl; return 0; } Bare et forslag Lenke til kommentar
dayslepr Skrevet 23. oktober 2005 Del Skrevet 23. oktober 2005 Min mening er at forslaget til dayslepr var noe unødvendig, men... Forslaget til GeirGrusom er enklere å utvføre, enklere å forstå, enklere å jobbe med...osv... 5045140[/snapback] jeg postet kun for å illustrere "friend-måten" å gjøre det på men så har du vel sikkert en mening om det også - altså, hva "jeg" gjør Lenke til kommentar
Manfred Skrevet 23. oktober 2005 Del Skrevet 23. oktober 2005 hehe. ikke så gretten nå, dayslepr I forhold til den enkle problemstillingen i spørsmålet mener jeg det er litt overkill, men jeg skjønner hva du mener. Og det var på ingen måte ment for å kritisere deg, dine kunnskaper eller din måte å jobbe på. Jeg har inntrykk av at du har et relativt høyt kunnskapsnivå, og er ydmyk for det Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå