<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>Commentaires sur : L&#8217;héritage en C++</title>
	<atom:link href="http://blog.freelan.org/2011/03/08/lheritage-en-c/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/</link>
	<description>De l&#039;informatique, des octets et des poneys.</description>
	<lastBuildDate>Mon, 30 May 2016 16:33:41 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Par : Julien Kauffmann</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-78</link>
		<dc:creator><![CDATA[Julien Kauffmann]]></dc:creator>
		<pubDate>Wed, 30 Mar 2011 12:52:21 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-78</guid>
		<description><![CDATA[Merci pour ce retour et pour le signalement de la coquille, (c&#039;est corrigé ;)).

Effectivement, je n&#039;ai quasiment pas abordé le sujet des &quot;vtables&quot;, mais ça peut tout à fait être le sujet d&#039;un prochain article.]]></description>
		<content:encoded><![CDATA[<p>Merci pour ce retour et pour le signalement de la coquille, (c&#8217;est corrigé ;)).</p>
<p>Effectivement, je n&#8217;ai quasiment pas abordé le sujet des &#8220;vtables&#8221;, mais ça peut tout à fait être le sujet d&#8217;un prochain article.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Jboule</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-77</link>
		<dc:creator><![CDATA[Jboule]]></dc:creator>
		<pubDate>Wed, 30 Mar 2011 12:43:38 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-77</guid>
		<description><![CDATA[Article très intéressant et vraiment bien vulgarisé!
Je pense qu&#039;une introduction aux Vtables auraient pu être sympa pour comprendre vraiment les mécanismes du C++!

Petite coquille :) :
Cela a du sens : un carré (&lt;--LOSANGE :) (si on s’en réfère aux lois de la géométrie) est à la fois un rectangle et un carré, et il est aussi une forme.

Merci de faire partager tes connaissances ainsi que ton expérience et j&#039;attends le prochaine article avec impatience!]]></description>
		<content:encoded><![CDATA[<p>Article très intéressant et vraiment bien vulgarisé!<br />
Je pense qu&#8217;une introduction aux Vtables auraient pu être sympa pour comprendre vraiment les mécanismes du C++!</p>
<p>Petite coquille <img src="http://blog.freelan.org/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /> :<br />
Cela a du sens : un carré (&lt;&#8211;LOSANGE <img src="http://blog.freelan.org/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /> (si on s’en réfère aux lois de la géométrie) est à la fois un rectangle et un carré, et il est aussi une forme.</p>
<p>Merci de faire partager tes connaissances ainsi que ton expérience et j&#039;attends le prochaine article avec impatience!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Julien Kauffmann</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-70</link>
		<dc:creator><![CDATA[Julien Kauffmann]]></dc:creator>
		<pubDate>Sun, 13 Mar 2011 10:15:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-70</guid>
		<description><![CDATA[Merci :)

Ah oui j&#039;aimerais bien voir ça sinon : j&#039;avais moi même un prof. de POO à la fac mais il ne jurait que par le Java et avait l&#039;air assez biaisé... (du coup j&#039;y suis pas vraiment allé :D) Donc avoir un cours un peu plus objectif ça doit être vraiment bien !]]></description>
		<content:encoded><![CDATA[<p>Merci <img src="http://blog.freelan.org/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p>Ah oui j&#8217;aimerais bien voir ça sinon : j&#8217;avais moi même un prof. de POO à la fac mais il ne jurait que par le Java et avait l&#8217;air assez biaisé&#8230; (du coup j&#8217;y suis pas vraiment allé :D) Donc avoir un cours un peu plus objectif ça doit être vraiment bien !</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Julien Kauffmann</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-69</link>
		<dc:creator><![CDATA[Julien Kauffmann]]></dc:creator>
		<pubDate>Sun, 13 Mar 2011 10:11:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-69</guid>
		<description><![CDATA[Si tu veux t&#039;y mettre, je te recommande vivement le bouquin &lt;a href=&quot;http://diveintopython.org/&quot; rel=&quot;nofollow&quot;&gt;Dive into Python&lt;/a&gt; qui est vraiment génial.

:)]]></description>
		<content:encoded><![CDATA[<p>Si tu veux t&#8217;y mettre, je te recommande vivement le bouquin <a href="http://diveintopython.org/" rel="nofollow">Dive into Python</a> qui est vraiment génial.</p>
<p><img src="http://blog.freelan.org/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Anthony</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-68</link>
		<dc:creator><![CDATA[Anthony]]></dc:creator>
		<pubDate>Sat, 12 Mar 2011 15:56:25 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-68</guid>
		<description><![CDATA[C&#039;est vrai l&#039;article est bien construit et explique plusieurs concepts objets propres au C++. Il faudra que je vous fasse part de cours de POO que j&#039;ai en ce moment. On est en plein dedans, les problèmes liés à l&#039;héritage multiple (héritage de propriétés, appel à super, constructeurs). Le prof a fait son doctorat sur le paradigme objet, il est vraiment intéressant. C&#039;est bien de voir aussi d&#039;un autre angle les choix fait en c++, on se rend compte desfois qu&#039;ils ne sont pas forcément les meilleurs :p (comme les appels explicites dans le cas de conflits de propriétés globales).]]></description>
		<content:encoded><![CDATA[<p>C&#8217;est vrai l&#8217;article est bien construit et explique plusieurs concepts objets propres au C++. Il faudra que je vous fasse part de cours de POO que j&#8217;ai en ce moment. On est en plein dedans, les problèmes liés à l&#8217;héritage multiple (héritage de propriétés, appel à super, constructeurs). Le prof a fait son doctorat sur le paradigme objet, il est vraiment intéressant. C&#8217;est bien de voir aussi d&#8217;un autre angle les choix fait en c++, on se rend compte desfois qu&#8217;ils ne sont pas forcément les meilleurs :p (comme les appels explicites dans le cas de conflits de propriétés globales).</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : daminetreg</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-67</link>
		<dc:creator><![CDATA[daminetreg]]></dc:creator>
		<pubDate>Sat, 12 Mar 2011 09:23:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-67</guid>
		<description><![CDATA[Je me réjouissai d&#039;avoir le temps de me mettre au python cette année à l&#039;eXia parce que j&#039;avais justement entendu que c&#039;était bien, et si tu dis que l&#039;on s&#039;enthousiasme autant que pour le C++ c&#039;est qu&#039;il y a vraiment quelque chose. :)

Malheureusement cette année l&#039;eXia a choisie de remplacer Python &amp; Pearl par un projet en Flex! Ils ont même attendu le dernier moment pour nous le dire. =\ 

Cela ne m&#039;empêchera pas pour le python de l&#039;apprendre toutefois, cela aurait seulement été génial d&#039;en avoir le temps pendant les études.]]></description>
		<content:encoded><![CDATA[<p>Je me réjouissai d&#8217;avoir le temps de me mettre au python cette année à l&#8217;eXia parce que j&#8217;avais justement entendu que c&#8217;était bien, et si tu dis que l&#8217;on s&#8217;enthousiasme autant que pour le C++ c&#8217;est qu&#8217;il y a vraiment quelque chose. <img src="http://blog.freelan.org/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p>Malheureusement cette année l&#8217;eXia a choisie de remplacer Python &amp; Pearl par un projet en Flex! Ils ont même attendu le dernier moment pour nous le dire. =\ </p>
<p>Cela ne m&#8217;empêchera pas pour le python de l&#8217;apprendre toutefois, cela aurait seulement été génial d&#8217;en avoir le temps pendant les études.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Julien Kauffmann</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-66</link>
		<dc:creator><![CDATA[Julien Kauffmann]]></dc:creator>
		<pubDate>Fri, 11 Mar 2011 18:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-66</guid>
		<description><![CDATA[Magnifique carrément ?! Merci bien :p

C&#039;est vrai que c&#039;est une des raisons pour lesquelles j&#039;aime aussi le C++. Le seul langage pour lequel je me sois enthousiasmé autant pour l&#039;instant, c&#039;est le Python. N&#039;hésite pas à essayer : C&#039;est pas vraiment le même genre, mais c&#039;est vraiment un beau concept.]]></description>
		<content:encoded><![CDATA[<p>Magnifique carrément ?! Merci bien :p</p>
<p>C&#8217;est vrai que c&#8217;est une des raisons pour lesquelles j&#8217;aime aussi le C++. Le seul langage pour lequel je me sois enthousiasmé autant pour l&#8217;instant, c&#8217;est le Python. N&#8217;hésite pas à essayer : C&#8217;est pas vraiment le même genre, mais c&#8217;est vraiment un beau concept.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : daminetreg</title>
		<link>http://blog.freelan.org/2011/03/08/lheritage-en-c/#comment-65</link>
		<dc:creator><![CDATA[daminetreg]]></dc:creator>
		<pubDate>Fri, 11 Mar 2011 16:31:37 +0000</pubDate>
		<guid isPermaLink="false">http://blog.freelan.org/?p=327#comment-65</guid>
		<description><![CDATA[C&#039;est un article magnifique. :) J&#039;ai mieux compris l&#039;héritagle virtuel grâce à tes explications et au lien de parashift que je n&#039;avais compris jusqu&#039;à aujourd&#039;hui. Cela fait du bien de ne plus se tromper. =D

Grâce à ton explication j&#039;ai réalisé pourquoi la délégation vers une classe soeur était possible: http://www.parashift.com/c++-faq-lite/multiple-inheritance.html#faq-25.10
Si on inverse Der1 et Der2 dans la ligne suivante: &quot;class Join : public Der1, public Der2&quot; (donc comme ça: &quot;class Join : public Der2, public Der1)  on aura alors l&#039;effet inverse: la méthode Der1::bar() sera appellé à la place de l&#039;implémentation propre de Der2 (il faut juste en faire une).

Cela s&#039;explique donc, si j&#039;ai bien compris, par le fait que la dernière classe de la chaîne d&#039;héritage à contenir une implémentation d&#039;une même méthode est prise comme méthode pour la classe de Jointure, soit la classe Square dans ton exemple. Cependant pour que la sister cross-delegation soit possible la méthode en question doit être virtuelle, car cela fait une vtable unique pour la classe de jointure et donc un appel sur un pointeur casté en un des types parents d&#039;une instance de la classe de jointure résulte en une utilisation du même pointeur de la vtable qui mène vers la dernière méthode virtuelles de la dernière classe de la chaîne d&#039;héritage.

Je trouve le c++ génial, car souvent on a l&#039;impression que de nombreuses fonctionalités viennent de la logique et la rigueur avec laquelle le langage est produit, comme s&#039;il apportait des fonctionnalités du fait d&#039;une logique mathématique, je n&#039;ai encore retrouvé ce sentiment dans aucun autre langage que je connais.]]></description>
		<content:encoded><![CDATA[<p>C&#8217;est un article magnifique. <img src="http://blog.freelan.org/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /> J&#8217;ai mieux compris l&#8217;héritagle virtuel grâce à tes explications et au lien de parashift que je n&#8217;avais compris jusqu&#8217;à aujourd&#8217;hui. Cela fait du bien de ne plus se tromper. =D</p>
<p>Grâce à ton explication j&#8217;ai réalisé pourquoi la délégation vers une classe soeur était possible: <a href="http://www.parashift.com/c++-faq-lite/multiple-inheritance.html#faq-25.10" rel="nofollow">http://www.parashift.com/c++-faq-lite/multiple-inheritance.html#faq-25.10</a><br />
Si on inverse Der1 et Der2 dans la ligne suivante: &#8220;class Join : public Der1, public Der2&#8243; (donc comme ça: &#8220;class Join : public Der2, public Der1)  on aura alors l&#8217;effet inverse: la méthode Der1::bar() sera appellé à la place de l&#8217;implémentation propre de Der2 (il faut juste en faire une).</p>
<p>Cela s&#8217;explique donc, si j&#8217;ai bien compris, par le fait que la dernière classe de la chaîne d&#8217;héritage à contenir une implémentation d&#8217;une même méthode est prise comme méthode pour la classe de Jointure, soit la classe Square dans ton exemple. Cependant pour que la sister cross-delegation soit possible la méthode en question doit être virtuelle, car cela fait une vtable unique pour la classe de jointure et donc un appel sur un pointeur casté en un des types parents d&#8217;une instance de la classe de jointure résulte en une utilisation du même pointeur de la vtable qui mène vers la dernière méthode virtuelles de la dernière classe de la chaîne d&#8217;héritage.</p>
<p>Je trouve le c++ génial, car souvent on a l&#8217;impression que de nombreuses fonctionalités viennent de la logique et la rigueur avec laquelle le langage est produit, comme s&#8217;il apportait des fonctionnalités du fait d&#8217;une logique mathématique, je n&#8217;ai encore retrouvé ce sentiment dans aucun autre langage que je connais.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
