06. januar 2005 - 15:08Der er
22 kommentarer og 1 løsning
Arbejde med objekter
Er stadig rimelig ny til c++, men vil gerne lige vide hvordan man arbejder med objekter, hvis vi nu siger jeg har et container objekt af en klasse som hedder bil, og i min klasse som jeg kalder constructor skal der være en metode som f.eks. hedder:
udskrivBil den skal så have et bil objekt med, det jeg har prøvet indtil videre ser sådan her ud:
void udskrivObjekt(Bil bil){ } Men brokker den sig over. Hvordan er det man gør det her?
nej vil have metoden i en anden klasse, så jeg kan arbejde videre på objektet i den klasse :) klassen hedder Controller, der hvor den metode skal være i.
nu siger den: body has allready been defined for function intToString<T>(T) at line 7 Multiple declaration for 'Bil' at line 15 earlier declaration of 'Bil' at line 14.
Bil min_bil2("bil2",200,120000); string y = min_bil2.toString(); std::cout << "toString2: " << y << std::endl;
// char txt[] = "Denne tekst skrives til en fil";
char *x = new char[y.size() + 1]; strcpy(x, y.c_str()); char v[200]; // nok er nok strcpy(v, y.c_str()); delete [] x;
controller.skrivTilFil(v,sizeof(v)); // string tekst = controller.laesFraFil(); // std::cout << tekst << std::endl;
//string til char[] /* std::string y = "Ole Nielsen"; char *x = new char[y.size() + 1]; strcpy(x, y.c_str()); char v[1025]; // nok er nok strcpy(v, y.c_str()); delete [] x; std::cout << "v: " << v << std::endl; */ //string til int std::string t("123"); int i; FromString(i, t); std::cout << "i: " << i << std::endl;
//string til double double d; FromString(d, t); std::cout << "d: " << d << std::endl;
//string til float float f; FromString(f, t); std::cout << "f: " << f << std::endl;
//split std::string Test = "Bil,200,230.23"; std::string Sub; while(!(Sub = Split(y, ',')).empty()){ std::cout << Sub << std::endl; }
Ok tar jeg som et ja så. Den melder denne fejl nu:
bcc32 -D_DEBUG -g100 -j25 -Od -r- -k -y -v -vi- -tWC -c -IC:\CBuilderX\include -n"D:\c++ programmering\basic\windows\Debug_Build" bil.cpp brugbil.cpp controller.cpp Borland C++ 5.6.4 for Win32 Copyright (c) 1993, 2002 Borland bil.cpp: "bil.h": E2187 Unexpected end of file in conditional started on line 4 at line 36 "bil.cpp": E2056 Misplaced endif directive at line 2 *** 2 errors in Compile *** brugbil.cpp: "bil.h": E2187 Unexpected end of file in conditional started on line 4 at line 36 "bil.h": E2187 Unexpected end of file in conditional started on line 4 at line 36 *** 2 errors in Compile *** controller.cpp: "bil.h": E2187 Unexpected end of file in conditional started on line 4 at line 36 "controller.cpp": W8057 Parameter 'bil' is never used in function Controller::udskrivObjekt(Bil &) at line 22 *** 1 errors in Compile *** BCC32 exited with error code: 1 Build cancelled due to errors
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.