dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

Dīvains errors...
Goto page 1, 2  Next
 
dev.gamez.lv Forum Index -> Iesācējiem
View previous topic :: View next topic  
Author Message
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Wed Oct 29, 2008 7:50 pm    Post subject: Dīvains errors...

Veidojot savu projektu pēkšņi sapratu, ka izejot no programmas uzlec sekojošs error.



Ir kādam zināms varbūt apmēram kur varētu būt kļūda?
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Wed Oct 29, 2008 7:57 pm    Post subject:

palaid projektu ar "Start Debugging" jeb F5, ja ar MS VC strādā. (ja nav MSVC, tad trakāk Very Happy)
šeit izskatās, ka esi kādu null pointeri aizticis.
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Wed Oct 29, 2008 8:12 pm    Post subject:

+/- sapratu kurā galā ir kļūda(buttonu klasē), bet pointeru pašai klasei nav.
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Oct 29, 2008 8:12 pm    Post subject:

Errors nav dīvainis. Visparastākais kļūdas paziņojums par to, ka tava aplikācija grābstās gar neatļautu atmiņu.

Iemācies lietot debugeri - ar to varēs precīzi atrast kurā vietā ir kods, kas izraisa šo kļūdu, un varēs pārbaudīt mainīgo vērtības, kas pie tā atbildīgi, lai noskaidrotu problēmu. http://www.gamedev.net/reference/articles/article2322.asp

Šī kļūda ir lielisks piemērs arī kāpēc nevajag programmēt C++'ā. Augstāka līmeņa valodās (C#, Java, Python, utt) šādu kļūdu nekad nedabūsi - tādās programmēt ir daudz vienkāršāk/vieglāk, īpaši jau iesācējam, kurš pamanās bieži ielaist kļūdas. Esi pārliecināts, ka programmē pareizajā valodā? ;)
Back to top
View user's profile Send e-mail
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Wed Oct 29, 2008 8:29 pm    Post subject:

Zinu, ka neprotu debugot, bet ceru, ka ar laiku pratīšu.
Itkā atradu rindiņu kurā itkā parādās šī kļūda, vismaz šo rindiņu nokomentējot errora nav. Nesaprotu tikai kas tur slikts.

Code:
void CButton::drawButton(CGameEngine* game)
{
    game->screen.Draw(textString);
}

_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Oct 29, 2008 8:43 pm    Post subject:

Uzliec breikpointu šajā rindiņā. Palaid programmu. Kad debugeris apstājas breikpointā, tad pārbaudi game, game->screen un textString mainīgo vērtības. T.i. pāliecinies vai tās satur sakarīgu informāciju.
Back to top
View user's profile Send e-mail
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Wed Oct 29, 2008 9:04 pm    Post subject:

Starp citu lietoju Code::Blocks. Paskatījos tajā breikpointā ar Memory Dump tūli un tur bija rakstīts
Code:
Cannot access memory at address 0x45c

un šāds izslatās Watches tūļa logs:

nav ne jausmas kas varētu būt pie vainas un ko darīt...
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Wed Oct 29, 2008 9:08 pm    Post subject:

textString tev ir const char* vai std::string tipa (ja teksts)?
vai kāds cits parasts pointeris?
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Wed Oct 29, 2008 9:10 pm    Post subject:

Tas ir SFML sf::String tipa mainīgais(ar to zīmē tekstu).
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Wed Oct 29, 2008 9:22 pm    Post subject:

varbūt pamēģini uzlikt breakpointu uz Draw funkcijas, pēc tam lieto "Step Into", lai nokļūtu precīzi līdz tai vietai, kurā tiek aiztikts sliktais pointeris, un apskaties, kurš tas ir. Tālāk gan jau atradīsi ceļu ārā no problēmas. Wink
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Wed Oct 29, 2008 9:36 pm    Post subject:

Draw funkcija ir SFML dll`ā. Tā nav manis ražota.
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Wed Oct 29, 2008 9:39 pm    Post subject:

SFML source kodu var dabūt viņu mājaslapā
-> http://www.sfml-dev.org/download.php
-> SFML full SDK
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Wed Oct 29, 2008 11:09 pm    Post subject:

Interesanti, bet uz cita datora šis error neparādās...

Tiem kas vēlas pamēģināt - errors rādās izejot no programmas.
http://www.box.net/shared/a62fu8jqv8
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Wed Oct 29, 2008 11:40 pm    Post subject:

man erroru nerādīja.
kaut kāds SFML bugs tad varētu būt..
labāk apskati to source kodu.
btw, man šķiet, ka es googlē jau vienu topiku viņu forumā par to redzēju..
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Oct 29, 2008 11:42 pm    Post subject:

Tankists wrote:
Interesanti, bet uz cita datora šis error neparādās...

Tas vēl jo vairāk nozīmē to, ka ir problēmas ar atmiņu. Vai nu kautko neinicializē līdz galam, vai arī kautko iznīcini vairāk nekā vajadzīgs, vai pārraksti kautkur pāri, kur nedrīkst, vai tml problēmu.

Pamācies vien lietot debugeri. Paseko uz atpakaļu koda darbībā kā tev tas drawStrings rodās un kur glabājas. Pa ceļam tas kautkur visdrīzāk sabojājas - to vietu tad tev arī vajag atrast.
Back to top
View user's profile Send e-mail
Display posts from previous:   
dev.gamez.lv Forum Index -> Iesācējiem All times are GMT + 2 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group