<?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/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	
	>
<channel>
	<title>
	Comments on: An Implementation Helper For The Curiously Recurring Template Pattern	</title>
	<atom:link href="https://www.fluentcpp.com/2017/05/19/crtp-helper/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/</link>
	<description>Jonathan Boccara&#039;s blog</description>
	<lastBuildDate>Wed, 01 Aug 2018 22:04:00 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.3</generator>
	<item>
		<title>
		By: Jonathan Boccara		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-1201</link>

		<dc:creator><![CDATA[Jonathan Boccara]]></dc:creator>
		<pubDate>Wed, 01 Aug 2018 22:04:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-1201</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-1193&quot;&gt;sephorusFR&lt;/a&gt;.

Always welcome :)]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-1193">sephorusFR</a>.</p>
<p>Always welcome 🙂</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: sephorusFR		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-1193</link>

		<dc:creator><![CDATA[sephorusFR]]></dc:creator>
		<pubDate>Tue, 31 Jul 2018 18:25:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-1193</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-379&quot;&gt;Jonathan Boccara&lt;/a&gt;.

FWIW, I usually call crtp as static_base and underlying() is self(). 
My 2cts]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-379">Jonathan Boccara</a>.</p>
<p>FWIW, I usually call crtp as static_base and underlying() is self().<br />
My 2cts</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Panos KJ		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-1138</link>

		<dc:creator><![CDATA[Panos KJ]]></dc:creator>
		<pubDate>Fri, 20 Jul 2018 10:02:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-1138</guid>

					<description><![CDATA[While writing a CRTP class I found an alternative to the private constructor + friend trick. First, define a static method in which you static_assert T is convertible to CRTP. Then call this method inside the constructor(s) of CRTP and you get very descriptive error messages.]]></description>
			<content:encoded><![CDATA[<p>While writing a CRTP class I found an alternative to the private constructor + friend trick. First, define a static method in which you static_assert T is convertible to CRTP. Then call this method inside the constructor(s) of CRTP and you get very descriptive error messages.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Wei Ni		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-750</link>

		<dc:creator><![CDATA[Wei Ni]]></dc:creator>
		<pubDate>Sun, 14 Jan 2018 04:46:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-750</guid>

					<description><![CDATA[Another way to avoid diamond inheritance :
template  struct crtp{...}
template  struct Square: crtp {...}
template  struct Scale: crtp {...}
class Sensitivity : public Scale, public Square{...}]]></description>
			<content:encoded><![CDATA[<p>Another way to avoid diamond inheritance :<br />
template  struct crtp{&#8230;}<br />
template  struct Square: crtp {&#8230;}<br />
template  struct Scale: crtp {&#8230;}<br />
class Sensitivity : public Scale, public Square{&#8230;}</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Mike D.		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-528</link>

		<dc:creator><![CDATA[Mike D.]]></dc:creator>
		<pubDate>Wed, 06 Sep 2017 13:47:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-528</guid>

					<description><![CDATA[Thanks, Jonathan! An excellent little article.]]></description>
			<content:encoded><![CDATA[<p>Thanks, Jonathan! An excellent little article.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jonathan Boccara		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-380</link>

		<dc:creator><![CDATA[Jonathan Boccara]]></dc:creator>
		<pubDate>Tue, 04 Jul 2017 09:50:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-380</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-370&quot;&gt;Bryce Schober&lt;/a&gt;.

Sorry this is not clear enough. Do you have something specific in mind that would help make it more obvious?]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-370">Bryce Schober</a>.</p>
<p>Sorry this is not clear enough. Do you have something specific in mind that would help make it more obvious?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jonathan Boccara		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-379</link>

		<dc:creator><![CDATA[Jonathan Boccara]]></dc:creator>
		<pubDate>Tue, 04 Jul 2017 09:49:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-379</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-371&quot;&gt;Bryce Schober&lt;/a&gt;.

I count on the fact that CRTP is now a ubiquitous enough name for a design pattern, so that it&#039;s instantly recognizable in code. Don&#039;t you think it&#039;s the case?]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-371">Bryce Schober</a>.</p>
<p>I count on the fact that CRTP is now a ubiquitous enough name for a design pattern, so that it&#8217;s instantly recognizable in code. Don&#8217;t you think it&#8217;s the case?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Bryce Schober		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-371</link>

		<dc:creator><![CDATA[Bryce Schober]]></dc:creator>
		<pubDate>Fri, 30 Jun 2017 22:01:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-371</guid>

					<description><![CDATA[Along your line of thought in making template names more expressive... what could be a more expressive name for crtp?]]></description>
			<content:encoded><![CDATA[<p>Along your line of thought in making template names more expressive&#8230; what could be a more expressive name for crtp?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Bryce Schober		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-370</link>

		<dc:creator><![CDATA[Bryce Schober]]></dc:creator>
		<pubDate>Fri, 30 Jun 2017 22:00:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-370</guid>

					<description><![CDATA[Hmm... as a early-learning reader, the usage of the two-template-parameter crtp is not obvious. You didn&#039;t provide a refreshed example here, nor has your NamedType crtp.hpp (https://github.com/joboccara/NamedType/blob/master/crtp.hpp) been update to be exemplary.]]></description>
			<content:encoded><![CDATA[<p>Hmm&#8230; as a early-learning reader, the usage of the two-template-parameter crtp is not obvious. You didn&#8217;t provide a refreshed example here, nor has your NamedType crtp.hpp (<a href="https://github.com/joboccara/NamedType/blob/master/crtp.hpp" rel="nofollow ugc">https://github.com/joboccara/NamedType/blob/master/crtp.hpp</a>) been update to be exemplary.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jonathan Boccara		</title>
		<link>https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-297</link>

		<dc:creator><![CDATA[Jonathan Boccara]]></dc:creator>
		<pubDate>Thu, 25 May 2017 15:58:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=750#comment-297</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-293&quot;&gt;Daniel Houck&lt;/a&gt;.

Hey Daniel,
1- I&#039;ve tried your idea and it doesn&#039;t solve the problem, unfortunately. I guess this is because there are still two paths from crtp down to Sensitivity.
2- I&#039;ve tried all combinations, and the top layer only needs to declare the middle-layer friend. That&#039;s a very good point, I&#039;m going to amend the post with this. Thanks Daniel!]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/05/19/crtp-helper/#comment-293">Daniel Houck</a>.</p>
<p>Hey Daniel,<br />
1- I&#8217;ve tried your idea and it doesn&#8217;t solve the problem, unfortunately. I guess this is because there are still two paths from crtp down to Sensitivity.<br />
2- I&#8217;ve tried all combinations, and the top layer only needs to declare the middle-layer friend. That&#8217;s a very good point, I&#8217;m going to amend the post with this. Thanks Daniel!</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
