<?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: Smart developers use smart pointers (1/7) &#8211; Smart pointers basics	</title>
	<atom:link href="https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/</link>
	<description>Jonathan Boccara&#039;s blog</description>
	<lastBuildDate>Fri, 07 Sep 2018 02:17: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: Tien Do		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-1276</link>

		<dc:creator><![CDATA[Tien Do]]></dc:creator>
		<pubDate>Fri, 07 Sep 2018 02:17:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-1276</guid>

					<description><![CDATA[I started again with C++ recently, and smart pointer is one of most exciting features of what we called &quot;modern C++&quot;, it wasn&#039;t in my C++ in early 2000s :)]]></description>
			<content:encoded><![CDATA[<p>I started again with C++ recently, and smart pointer is one of most exciting features of what we called &#8220;modern C++&#8221;, it wasn&#8217;t in my C++ in early 2000s 🙂</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jesse Silverman		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-1186</link>

		<dc:creator><![CDATA[Jesse Silverman]]></dc:creator>
		<pubDate>Mon, 30 Jul 2018 15:27:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-1186</guid>

					<description><![CDATA[I think at the level of abstraction of this introductory article, this comment is nitpicking, but when you say:
&quot;Technically this means that a and s are stored next to one another in memory because they have been pushed on a stacked maintained by the compiler. However these concerns are not so relevant for daily work.&quot;
The combination of Null-terminated char arrays passing for strings in C, and default placement of objects on the stack has literally been the cause of thousands and thousands of bugs I have seen (and often been the one to fix) in my career.  There&#039;s actually many things I do still like, and for a long time loved about C.  But null-terminated strings were always a health hazard, not like smoking or ice-cream, but like smoking while preparing the Hindenburg for takeoff.

The combination of C strings, or any buffers of any sort that might have been passed somewhere that aren&#039;t aware of their size -- and the stack, was frequently deadly and the source of much software instability and fragility.  It would often cause such a disaster that one was a hero for even figuring out where the crash occurred, much less why.  Of course, I suspected this cause before we ever found out where the crash was, but it couldn&#039;t be fixed until the location of the crash was determined -- unless one fixed globally any and all pray-and-write operations into any kind of buffer of uncertain size.

I think it gave the stack a bad name to a lot of people.  It is a great place to store things with a deterministic lifetime.  I love it.  You just better know the size of everything on it and where the things end, and that is true no matter whether that thing lives in static memory, on the stack, or free store.

Anyway, that is for some other post, if you haven&#039;t covered it already, I am still very actively exploring your fine blog.]]></description>
			<content:encoded><![CDATA[<p>I think at the level of abstraction of this introductory article, this comment is nitpicking, but when you say:<br />
&#8220;Technically this means that a and s are stored next to one another in memory because they have been pushed on a stacked maintained by the compiler. However these concerns are not so relevant for daily work.&#8221;<br />
The combination of Null-terminated char arrays passing for strings in C, and default placement of objects on the stack has literally been the cause of thousands and thousands of bugs I have seen (and often been the one to fix) in my career.  There&#8217;s actually many things I do still like, and for a long time loved about C.  But null-terminated strings were always a health hazard, not like smoking or ice-cream, but like smoking while preparing the Hindenburg for takeoff.</p>
<p>The combination of C strings, or any buffers of any sort that might have been passed somewhere that aren&#8217;t aware of their size &#8212; and the stack, was frequently deadly and the source of much software instability and fragility.  It would often cause such a disaster that one was a hero for even figuring out where the crash occurred, much less why.  Of course, I suspected this cause before we ever found out where the crash was, but it couldn&#8217;t be fixed until the location of the crash was determined &#8212; unless one fixed globally any and all pray-and-write operations into any kind of buffer of uncertain size.</p>
<p>I think it gave the stack a bad name to a lot of people.  It is a great place to store things with a deterministic lifetime.  I love it.  You just better know the size of everything on it and where the things end, and that is true no matter whether that thing lives in static memory, on the stack, or free store.</p>
<p>Anyway, that is for some other post, if you haven&#8217;t covered it already, I am still very actively exploring your fine blog.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jonathan Boccara		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-1073</link>

		<dc:creator><![CDATA[Jonathan Boccara]]></dc:creator>
		<pubDate>Sun, 17 Jun 2018 17:13:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-1073</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-1071&quot;&gt;Taw Moto&lt;/a&gt;.

Whoops, sorry. Fixed it, thanks!]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-1071">Taw Moto</a>.</p>
<p>Whoops, sorry. Fixed it, thanks!</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Manoj Kumar		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-1072</link>

		<dc:creator><![CDATA[Manoj Kumar]]></dc:creator>
		<pubDate>Sat, 16 Jun 2018 12:42:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-1072</guid>

					<description><![CDATA[Really Great Introduction, I came across through Meeting c++, Awesome !!]]></description>
			<content:encoded><![CDATA[<p>Really Great Introduction, I came across through Meeting c++, Awesome !!</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Taw Moto		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-1071</link>

		<dc:creator><![CDATA[Taw Moto]]></dc:creator>
		<pubDate>Fri, 15 Jun 2018 18:19:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-1071</guid>

					<description><![CDATA[Some of the related articles at the bottom of the page do not have links.]]></description>
			<content:encoded><![CDATA[<p>Some of the related articles at the bottom of the page do not have links.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jonathan Boccara		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-527</link>

		<dc:creator><![CDATA[Jonathan Boccara]]></dc:creator>
		<pubDate>Mon, 04 Sep 2017 23:31:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-527</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-526&quot;&gt;Giammarco Agazzotti&lt;/a&gt;.

Awesome. Welcome Giammarco!]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-526">Giammarco Agazzotti</a>.</p>
<p>Awesome. Welcome Giammarco!</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Giammarco Agazzotti		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-526</link>

		<dc:creator><![CDATA[Giammarco Agazzotti]]></dc:creator>
		<pubDate>Mon, 04 Sep 2017 23:08:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-526</guid>

					<description><![CDATA[Amazing series! I am a little bit late here (I found this website by reading this: https://blog.tartanllama.xyz/learning-cpp/)

But I will definitely follow everything here! Good job!]]></description>
			<content:encoded><![CDATA[<p>Amazing series! I am a little bit late here (I found this website by reading this: <a href="https://blog.tartanllama.xyz/learning-cpp/" rel="nofollow ugc">https://blog.tartanllama.xyz/learning-cpp/</a>)</p>
<p>But I will definitely follow everything here! Good job!</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: GOWRI SANKAR		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-506</link>

		<dc:creator><![CDATA[GOWRI SANKAR]]></dc:creator>
		<pubDate>Sun, 27 Aug 2017 10:12:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-506</guid>

					<description><![CDATA[Very nice introductory article. Pointers have always been mystical to me]]></description>
			<content:encoded><![CDATA[<p>Very nice introductory article. Pointers have always been mystical to me</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Jonathan Boccara		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-501</link>

		<dc:creator><![CDATA[Jonathan Boccara]]></dc:creator>
		<pubDate>Wed, 23 Aug 2017 21:05:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-501</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-500&quot;&gt;codtiger&lt;/a&gt;.

Thanks! Well then stay tuned on Friday :)]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-500">codtiger</a>.</p>
<p>Thanks! Well then stay tuned on Friday 🙂</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: codtiger		</title>
		<link>https://www.fluentcpp.com/2017/08/22/smart-developers-use-smart-pointers-smart-pointers-basics/#comment-500</link>

		<dc:creator><![CDATA[codtiger]]></dc:creator>
		<pubDate>Wed, 23 Aug 2017 14:48:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.fluentcpp.com/?p=1043#comment-500</guid>

					<description><![CDATA[This is a great topic...and also this intro was pretty well written and concise.
Looking forward to read more from the series...]]></description>
			<content:encoded><![CDATA[<p>This is a great topic&#8230;and also this intro was pretty well written and concise.<br />
Looking forward to read more from the series&#8230;</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
