Fredrik90 Skrevet 14. november 2004 Del Skrevet 14. november 2004 Jeg driver og eksprimenterer litt her. men får noen feil i denne koden her som jeg ikke helt finner. er det noe syntax feil her? timer timer; class Aircraft; { public: void Aircraft::setforce(int x, int y, int z) { force.x=x; force.y=y; force.z=z; } void Aircraft::calculateA() { aceleration.x=force.x/mass; aceleration.y=force.y/mass; aceleration.z=force.z/mass; } void Aircraft::calculateV() { calculateA(); velocity.x+=aceleration.x*timer.GetElapsedSeconds(); velocity.y+=aceleration.y*timer.GetElapsedSeconds(); velocity.z+=aceleration.z*timer.GetElapsedSeconds(); } void Aircraft::setposition(int x, int y, int z) { position.x=x; position.y=y; position.z=z; } void Aircraft::move() { calculateV(); position.x+=velocity.x*timer.GetElapsedSeconds(); position.y+=velocity.y*timer.GetElapsedSeconds(); position.z+=velocity.z*timer.GetElapsedSeconds(); } private: CVector velocity; CVector position; CVector aceleration; CVector force; double friction; double alltitude; double m2lift; double fuel; double fuelflow; double drag; double trottle; double mass; }; timer er en egen klasse definert før som virker helt fint. håper noen kan hjelpe. Lenke til kommentar
haakoo Skrevet 14. november 2004 Del Skrevet 14. november 2004 Du bør også slenge med feilmeldinga du får når du kompilerer. Lenke til kommentar
lodott Skrevet 14. november 2004 Del Skrevet 14. november 2004 Skal ; etter "class Aircraft" være der? Lenke til kommentar
John Keats Skrevet 14. november 2004 Del Skrevet 14. november 2004 lodott skrev: Skal ; etter "class Aircraft" være der? Det er ikke logisk i allefall Lenke til kommentar
Peter Skrevet 14. november 2004 Del Skrevet 14. november 2004 lodott skrev: Skal ; etter "class Aircraft" være der? nei. Desssuten ville jeg puttet deklararasjonene (prototypene)i en headerfil, og selve funksjonene i en .cpp fil. HEADER FIL class AirCraft { public: AirCraft(); // constructor ~AirCraft(); // destructor void Aircraft::setforce(int x, int y, int z); void Aircraft::calculateA(); [...] private: <variabler> }; CPP FIL AirCraft::AirCraft() { <noe skjer her> } void AirCraft::setforce(int x, int y, int z) { force.x=x; force.y=y; force.z=z; } [osv] Lenke til kommentar
GeirGrusom Skrevet 14. november 2004 Del Skrevet 14. november 2004 Men det er ikke en nødvendighet, men det gjør at klassen blir mye enklere å bruke (pga avhengighet og slikt) Lenke til kommentar
Fredrik90 Skrevet 14. november 2004 Forfatter Del Skrevet 14. november 2004 skal prøve dette. takker for svar. Lenke til kommentar
Fredrik90 Skrevet 14. november 2004 Forfatter Del Skrevet 14. november 2004 (endret) Nazgul skrev: lodott skrev: Skal ; etter "class Aircraft" være der? nei. Desssuten ville jeg puttet deklararasjonene (prototypene)i en headerfil, og selve funksjonene i en .cpp fil. HEADER FIL class AirCraft { public: AirCraft(); // constructor ~AirCraft(); // destructor void Aircraft::setforce(int x, int y, int z); void Aircraft::calculateA(); [...] private: <variabler> }; CPP FIL AirCraft::AirCraft() { <noe skjer her> } void AirCraft::setforce(int x, int y, int z) { force.x=x; force.y=y; force.z=z; } [osv] hva mener du med AirCraft::AirCraft() { <noe skjer her> } hva tenkte du kunne skje der.( er en stund siden jeg ha programert.) og jeg får nå opp feil meldingen. 16 C:\Documents and Settings\Eier\Skrivebord\physic\test\engine.h:7 [Warning] ISO C requires whitespace after the macro name 26 C:\Documents and Settings\Eier\Skrivebord\physic\test\physic.cpp `test' undeclared (first use this function) + litt mer som ikke er noe og ramse opp bare noe med test.(dette er at den ikke er declered.) 37 C:\Documents and Settings\Eier\Skrivebord\physic\test\physic.cpp `sleep' undeclared (first use this function) håper på svar. MVH. Fredrik PS: bruker DEVCPP for den som lurer. Endret 14. november 2004 av Fredrik90 Lenke til kommentar
GeirGrusom Skrevet 15. november 2004 Del Skrevet 15. november 2004 Sitat 16 C:\Documents and Settings\Eier\Skrivebord\physic\test\engine.h:7 [Warning] ISO C requires whitespace after the macro name Tipper du har deklarert et makro uten mellomrom mellom navn og deklarasjon, eller navn og parameterliste. dessuten er det are en warning. #define MYMACRO(VAR)MessageBox(VAR) skal være #define MYMACRO(VAR) MessageBox(VAR) eller noe sånt, eller så er det en følgefeil. Resten er at du kan ha glemt å inkludere en header. 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å