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?
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.
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.