<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.2.2" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: Pimpl idiom without dynamic memory allocation</title>
	<link>https://codesynthesis.com/~boris/blog//2010/07/20/pimpl-idiom-without-dynamic-allocation/</link>
	<description>Boris Kolpackov's blog about software</description>
	<pubDate>Wed, 22 Apr 2026 10:45:14 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.2</generator>

	<item>
		<title>By: Guillaume</title>
		<link>https://codesynthesis.com/~boris/blog//2010/07/20/pimpl-idiom-without-dynamic-allocation/#comment-1581</link>
		<author>Guillaume</author>
		<pubDate>Wed, 21 Jul 2010 22:32:29 +0000</pubDate>
		<guid>https://codesynthesis.com/~boris/blog//2010/07/20/pimpl-idiom-without-dynamic-allocation/#comment-1581</guid>
		<description>Assuming 16-byte alignment,
In the constructor:
cache = (real_cache &#38; ~15) + 16;
In the members:
char *cache;
char real_cache[size + 16];

No need for boost or TR1, and it could even be done in C89.</description>
		<content:encoded><![CDATA[<p>Assuming 16-byte alignment,<br />
In the constructor:<br />
cache = (real_cache &amp; ~15) + 16;<br />
In the members:<br />
char *cache;<br />
char real_cache[size + 16];</p>
<p>No need for boost or TR1, and it could even be done in C89.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
