<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Articles &#187; Tutorials</title>
	<atom:link href="https://www.p6r.com/articles/category/tutorials/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.p6r.com/articles</link>
	<description>Code Less / Deliver More™</description>
	<lastBuildDate>Fri, 23 Jan 2026 05:49:07 +0000</lastBuildDate>
	<language>en-US</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.7</generator>
	<item>
		<title>Binary Compatible C++ Interfaces (Part 1)</title>
		<link>https://www.p6r.com/articles/2014/07/20/binary-compatible-c-interfaces/</link>
		<comments>https://www.p6r.com/articles/2014/07/20/binary-compatible-c-interfaces/#comments</comments>
		<pubDate>Sun, 20 Jul 2014 21:58:23 +0000</pubDate>
		<dc:creator><![CDATA[Jim Susoy]]></dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[The Basics]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[COM]]></category>
		<category><![CDATA[component]]></category>
		<category><![CDATA[interface]]></category>

		<guid isPermaLink="false">http://www.p6r.com/articles/?p=20</guid>
		<description><![CDATA[Introduction This is the first part of a multi-part series on the challenges and techniques for creating Binary Compatible C++ Interfaces (BCCI). In researching this topic, I often found the issues enumerated without (or with very little) explanation as to why something should be avoided. As a result I have tried to include the &#8220;why&#8221; [&#8230;]]]></description>
		<wfw:commentRss>https://www.p6r.com/articles/2014/07/20/binary-compatible-c-interfaces/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>p6COM Reference Counting: A Primer</title>
		<link>https://www.p6r.com/articles/2014/04/27/p6com-reference-counting-a-primer/</link>
		<comments>https://www.p6r.com/articles/2014/04/27/p6com-reference-counting-a-primer/#comments</comments>
		<pubDate>Mon, 28 Apr 2014 03:49:08 +0000</pubDate>
		<dc:creator><![CDATA[Jim Susoy]]></dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[COM]]></category>
		<category><![CDATA[The Basics]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">https://www.p6r.com/articles/?p=1076</guid>
		<description><![CDATA[Introduction Reference counting generally comes in two basic flavors: intrusive and non-intrusive. Non-intrusive reference counting basically means that the location of the variable which stores the reference value is outside of the &#8220;thing&#8221; being reference counted. COM interfaces make use of intrusive reference counting, meaning the underlying object maintains the reference count value itself internally. [&#8230;]]]></description>
		<wfw:commentRss>https://www.p6r.com/articles/2014/04/27/p6com-reference-counting-a-primer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Smart Pointer for p6COM</title>
		<link>https://www.p6r.com/articles/2010/10/12/a-smart-pointer-for-p6com/</link>
		<comments>https://www.p6r.com/articles/2010/10/12/a-smart-pointer-for-p6com/#comments</comments>
		<pubDate>Wed, 13 Oct 2010 05:32:28 +0000</pubDate>
		<dc:creator><![CDATA[Jim Susoy]]></dc:creator>
				<category><![CDATA[COM]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Unique Product Features]]></category>

		<guid isPermaLink="false">https://www.p6r.com/articles/?p=350</guid>
		<description><![CDATA[Introduction p6ComPtr&#60;&#62; is a smart pointer implementation designed for use with p6COM, P6R&#8217;s lite implementation of the Component Object Model. p6COM is the basis for our cross platform server framework as well as the library loader for our library products. p6ComPtr&#60;&#62; is a tool to help prevent component leaks and simplify the use and management [&#8230;]]]></description>
		<wfw:commentRss>https://www.p6r.com/articles/2010/10/12/a-smart-pointer-for-p6com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Feature Branches With svnmerge.py</title>
		<link>https://www.p6r.com/articles/2008/01/17/feature-branches-with-svnmergepy/</link>
		<comments>https://www.p6r.com/articles/2008/01/17/feature-branches-with-svnmergepy/#comments</comments>
		<pubDate>Fri, 18 Jan 2008 07:34:52 +0000</pubDate>
		<dc:creator><![CDATA[Jim Susoy]]></dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[subversion]]></category>

		<guid isPermaLink="false">http://www.p6r.com/articles/2008/01/17/feature-branches-with-svnmergepy/</guid>
		<description><![CDATA[This tutorial discusses what feature branches are and how to implement and manage them using Subversion and svnmerge.py. If you&#8217;ve made it here, I&#8217;m going to assume that you are already interested in using feature branches, so I&#8217;ll skip the sales pitch for the most part. Feature branches offer a very stable development model where [&#8230;]]]></description>
		<wfw:commentRss>https://www.p6r.com/articles/2008/01/17/feature-branches-with-svnmergepy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
