Gå til innhold

Hvorfor funker det ikke?!


Anbefalte innlegg

Halla,

 

Jeg prøver å lære meg C++ og har kommet til dette bokeksempelet som bare ikke vil kompileres med DevC++ v4.9.8.0. La ved RAR fil som inneholder alle filene. La også ved sånn programmet skal bli. =) Kan ikke laste opp RAR filer, så jeg gjorde det til TXT, men gjør det tilbake til RAR før du åpner.

CPP.txt

Endret av LostOblivion
Lenke til kommentar
Videoannonse
Annonse

jeg fant to linjer som det var feil på.

 

linjen er lik to ganger. (dette er den rettede linje ikke org)

linjene ligger i blizzard.cpp i funksjone

void GameActivate(HWND hWindow)

void GameDeactivate(HWND hWindow)

 

DrawText(hDC, TEXT("The blizzard has passed."), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);

 

jeg bare byttet ut ¦ med | så funka alt

 

ellers ser alt tipp topp ut, kompilerte og det ser helt likt exe fila..

 

lykke til :thumbup:

 

edit: | lages ved trykke ned knappen over TAB. Underlig nok ser det ut til at det er den du også har brukt :hmm: og det er tegnet du brukte som vises på tastaturet mitt, men | kommer fram når jeg trykker den ned. :hmm:

Endret av Giddion
Lenke til kommentar

Hmmm. Jeg skjønner. Jeg hadde faktisk | fra før av, men skiftet til det andre tegnet fordi det var det som står i boka. Funka ikke med |. Men når jeg skiftet tilbake til | igjen nå funker det fremdeles ikke! =S Er det noe galt med linkingen eller noe?

 

linje 68: [Warning] cast...

[Linker error] undefined reference to 'GameEngine::GameEngine(HINSTANCE__*,char*,char*,unsigned short, unsigned short, int, int)'

[Linker error] underfined reference to WinMain@16

 

Får feilmeldinger. Burde jeg bruke en annen compiler?

Endret av LostOblivion
Lenke til kommentar

aha nå vet jeg svaret (på den siste linker error , mulig det fikser alt), du kompilerer som om det var et windows program (derfor winmain). Men programet ditt bruker main som startpunkt.

At programmet bruke main eller winmain betyr bare at startfunksjonen er forskjelig og har så vidt jeg vet ikke noe med resten av programmet.

 

Så du kan enten erstate main med winmain

 

int WinMain(          HINSTANCE hInstance,
   HINSTANCE hPrevInstance,
   LPSTR lpCmdLine,
   int nCmdShow
);

 

Om du skal bruke main eller winmain burde ligge ved subsystem instillingene (hvor nå det måtte være)

Jeg syntes ikke det er noen vits å skifte kompilator forde et program ikke fungerer. Du burde heller lære deg hvordan kompilatoren fungerer helt ut.

Lenke til kommentar

Emnetittelen i denne tråden er ikke god nok, om ikke dette blir endret slik at det er lettere å forstå hva slags informasjon tråden omhandler vil denne bli stengt! En god emnetittel er en tittel som forklarer godt hva innholdet i posten din går ut på. En bruker bør kunne skaffe seg oversikt over hovedinnholdet i posten bare ut fra å lese tittelen. Vennligst forsøk å ha dette i tankene neste gang du starter en tråd, og orienter deg om hva vår nettikette sier om dårlig bruk av emnetitler.

 

Bruk p_edit.gif-knappen i første post for å endre emnetittelen.

 

(Dette innlegget vil bli fjernet ved endring av emnetittel. Vennligst ikke kommenter dette innlegget, men rapporter gjerne dette innlegget når tittelen er endret, så vil det bli fjernet.)

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...