<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Forum Pasja Informatyki - Najnowsze z tagiem #obiektowe</title>
<link>https://forum.pasja-informatyki.pl/tag/%23obiektowe</link>
<description>Powered by Question2Answer</description>
<item>
<title>nie działa funcka dynamic_cast</title>
<link>https://forum.pasja-informatyki.pl/249035/nie-dziala-funcka-dynamic_cast</link>
<description>

&lt;p&gt;Piszę grę arkanoid (z pomocą openGL) i mam pewien problem.. Generalnie gra prawie działa, piłka lata, odbija się, ale nie zbija klocków.. do klocków wykorzystuję klasę cKlocek, która dziedziczy po cProstokat... cProstokat ma wszystkie funkcje sciany itd., a cKlocek ma dodatkowo atrybut odporność, która powinna spadac wraz z kolejnym zetknieciem się pilki z klockiem. Niestety funkcja dynamic_cast nie rozróżnia klocka od prostokąta. Podczas debugowania przydziela zarówno pierwszemu jak i drugiemu wartość NULL...&lt;/p&gt;



&lt;p&gt;Wstawiam część kodu, którą opisuję. Jeśli pokazać jakąś klasę piszcie, ponieważ nie jestem w stanie wsadzić całego kodu, który jest zawarty w 16 plikach. Proszę o pomoc, ponieważ siedzę nad tym debugowaniem już drugi dzień.&lt;/p&gt;



&lt;pre class=&quot;brush:cpp;&quot;&gt;
void cScena::odbij()
{

	for (int i = 0; i &amp;lt; tab.size(); i++)
	{
		for (int k = i + 1; k &amp;lt; tab.size(); k++)
		{	
	
			if (tab[i]-&amp;gt;Kolizja(*tab[k]))
			{		
				cKlocek* klocek = dynamic_cast&amp;lt;cKlocek*&amp;gt;(tab[k]);
				if (klocek != NULL){
					cout &amp;lt;&amp;lt; &quot;x&quot;;
					klocek-&amp;gt;odjacOdpornosc();				
				}
			}
		}
	}
}&lt;/pre&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;niestety nie pomaga także dodawanie metod wirtualnych oraz destruktorów&lt;/p&gt;



&lt;p&gt;cały program można zobaczyć na githubie:&lt;/p&gt;



&lt;p&gt;&lt;a href=&quot;https://github.com/heros22pt/arkanoid_1/tree/master/lab_5_2&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://github.com/heros22pt/arkanoid_1/tree/master/lab_5_2&lt;/a&gt;&lt;/p&gt;</description>
<category>C i C++</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/249035/nie-dziala-funcka-dynamic_cast</guid>
<pubDate>Sat, 29 Apr 2017 14:59:16 +0000</pubDate>
</item>
</channel>
</rss>