💬
Logga in
Fuska.se

C++ Fel

8 svar · startad

Nivå 0 · Nykomling
Trådstartare #1

Koden är:

void aktie::kop(int antal, int pris){

 

Det står att det är fel, det står:

 

" no 'void aktie::koå(int, int)' member function declared in class 'aktie' "

17 Sep 2005
Nivå 0 · Nykomling
#2

Jag tror du måste skriva något i stil med det här för att det ska gå:

 

void aktie(int antal, int pris); //Du måste deklarera funktionen om den ska innehålla variabler. Det ska stå innan "main".

int main()
{

void aktie::kop(int antal, int pris)
{

 

Jag är inte så bra på c++ men ska det verkligen stå "::" mellan "aktie" och "kop"?

Nivå 0 · Nykomling
Trådstartare #3

Så här har jag skrivit:

 

 

void aktie::kop(int antal, int pris){

aktier+=antal;

varde=pris;

tot();

}

 

Och det ska vara "::" Mellan, men vet inte varför !

Nivå 0 · Nykomling
#4

Har du inte skrivit mer? Det där funkar inte va? Du måste ha med main() om jag inte minns fel.

Nivå 0 · Nykomling
Trådstartare #5

Det ska inte vara något main :S

 

 

#include <iostream.h>

#include <stdlib.h>

#include <string.h>

 

class aktie {

char foretag[25];

int aktier, varde, totalt;

void tot() {totalt=aktier*varde;}

public:

void ordna (const char* fo, int x, int pris);

void visa();

};

 

void aktie::ornda (const char* fo, int x, int pris) {

 

strcpy (foretag, fo);

aktier=x;

varde=pris

tot();

}

 

void aktie::visa() {

cout<<"Företag:"<<foretag

<<"Aktier:"<<aktier<<'\n'

<<"Varde i kr:"<<varde

<<"Totalt:"<<totalt<<'\n';

}

 

 

int main(void) {

char namn[25];

 

int antal, pris;

aktie aktie1;

cout<<"Ange aktie:";

cin>>namn;

cout<<"Ange antal:";

cin>>antal;

cout<<"Ange pris:";

cin>>pris;

aktie1.ordna(namn, antal, pris);

aktie1.visa();

return 0;

}

 

void kop(int antal, int pris);

void salj(int antal, int pris);

void uppdatera(int pris);

 

void aktie::kop(int antal, inte pris) {

aktier+=antal;

varde=pris;

tot();

}

 

void aktie::salj(int antal, int pris) {

if (antal>aktier) {

cout<<"Du har inte så många aktier!\n";

exit(1);

}

aktier-=antal;

varde=pris;

tot();

}

 

 

void aktie::uppdatera(int pris){

varde=pris;

tot();

}

Senast ändrad:

Nivå 0 · Nykomling
#6

Där jag läst och all den kod jag sett är det med main(). Det står att det behövs för det är den funktion som startas när programmet startar. Utan den händer alltså inget, vad jag förstått.

 

Och nu frågar jag igen, Funkar det där?

Nivå 0 · Nykomling
Trådstartare #7

Okej, jag vill inte säga att det var en dum idé!

 

Först var det 4 fel

 

Titta nu

 

post-16808-1126974209_thumb.gif

18 Sep 2005
Nivå 0 · Nykomling
#8

Jag försökte kompilera koden du skrev tidigare och felmeddelandet jag får säger att du inte deklarerat funktionen aktie. Det fattas även ett ";" efter "varde=pris".

 

strcpy (foretag, fo);

aktier=x;

varde=pris <---- DÄR!

tot();

}

 

Men det där meddelandet du tog screenshot på ser inte alls ut som mitt. Gjort om koden?

Nivå 0 · Nykomling
Trådstartare #9

Nej, skulle göra det men hålelr på med ett annat program nu!..

Vill du vara med i diskussionen?

Bli medlem Logga in