<?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>Comments on: All my computer does anymore is fold proteins</title>
	<atom:link href="http://archlinux.me/kofrad/2011/07/26/all-my-computer-does-anymore/feed/" rel="self" type="application/rss+xml" />
	<link>http://archlinux.me/kofrad/2011/07/26/all-my-computer-does-anymore/</link>
	<description>Learn with me as I learn about Arch Linux coming from 5+ years of Gentoo</description>
	<lastBuildDate>Thu, 09 May 2013 16:23:13 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>By: Evaryont</title>
		<link>http://archlinux.me/kofrad/2011/07/26/all-my-computer-does-anymore/#comment-44</link>
		<dc:creator>Evaryont</dc:creator>
		<pubDate>Sun, 31 Jul 2011 21:51:42 +0000</pubDate>
		<guid isPermaLink="false">http://archlinux.me/kofrad/?p=43#comment-44</guid>
		<description><![CDATA[Personally, I found re-creating the std::string class incredibly enlightening, especially about friend functions, good memory management practices and learning CPPUnit. (To write test cases to make sure the code does what it&#039;s supposed to do.) A fun exercise was also overloading all the functions in order to play nice with all other types. (In order to do &quot;s/string/MyString/&quot; in relatively big code bases and hope stuff still works.)

Beyond that, I also liked learning and doing linked list implementation, but also making sure I don&#039;t have any remaining null pointer references. (segfault, anyone?) Then after getting that down, make it templated. That&#039;s fun. (Tip: `typename Foo::Bar` before functions means you can actually return a type that is a sub-class of another. Without `typename`, g++ barks at you.) After that, stop using pointers directly but instead learned boost&#039;s shared_ptr semantics. Really different method compared to regular ol&#039; pointers, but I think my code is safer for using them. (At least they clean up after themselves now... &gt;.&lt;)

These aren&#039;t particularly complex, I&#039;m sure, but hopefully it&#039;s something for you to start on. :-)]]></description>
		<content:encoded><![CDATA[<p>Personally, I found re-creating the std::string class incredibly enlightening, especially about friend functions, good memory management practices and learning CPPUnit. (To write test cases to make sure the code does what it&#8217;s supposed to do.) A fun exercise was also overloading all the functions in order to play nice with all other types. (In order to do &#8220;s/string/MyString/&#8221; in relatively big code bases and hope stuff still works.)</p>
<p>Beyond that, I also liked learning and doing linked list implementation, but also making sure I don&#8217;t have any remaining null pointer references. (segfault, anyone?) Then after getting that down, make it templated. That&#8217;s fun. (Tip: `typename Foo::Bar` before functions means you can actually return a type that is a sub-class of another. Without `typename`, g++ barks at you.) After that, stop using pointers directly but instead learned boost&#8217;s shared_ptr semantics. Really different method compared to regular ol&#8217; pointers, but I think my code is safer for using them. (At least they clean up after themselves now&#8230; &gt;.&lt;)</p>
<p>These aren&#039;t particularly complex, I&#039;m sure, but hopefully it&#039;s something for you to start on. <img src='http://archlinux.me/kofrad/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>
