<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx</link><description>Insomnia and being a workaholic is an interesting combination. It is amazing how much work can be accomplished in the eight hours before everyone else comes to work. J Anyways, I spent some time working on specifying generics in C++ yesterday so I figured</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>RE: Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#51024</link><pubDate>Wed, 19 Nov 2003 21:21:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:51024</guid><dc:creator>andrew queisser</dc:creator><description>Thanks, good comparison. Hope you'll get some sleep now.

Another thing that generics don't allow you to do: derivation from &amp;quot;naked&amp;quot; type parameter, i.e. mixin programming.

Andrew</description></item><item><title>RE: Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#51025</link><pubDate>Thu, 20 Nov 2003 23:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:51025</guid><dc:creator>David Larsson</dc:creator><description>This is SO GOOD news! I am addicted to C++ templates, like they are used by STL and ATL, and have worried that CLR Generics will be too restrictive for me to take the plunge into C#/.NET for _all_ my projects. If MC++ will let me do both, and use each method's strengths, it is a big deal. Really big. 
Now, I will be able to compile verifiable assemblies with MC++, right? (I mean, no unsafe constructs or native code.) </description></item><item><title>RE: Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#51026</link><pubDate>Fri, 21 Nov 2003 05:17:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:51026</guid><dc:creator>Brandon Bray</dc:creator><description>Thanks Andrew! You're right about derivation from type parameters. I updated the entry to mention that.</description></item><item><title>RE: Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#51027</link><pubDate>Fri, 21 Nov 2003 14:41:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:51027</guid><dc:creator>AlisdairM</dc:creator><description>And of course, generics also solve the problem the infamous 'export' reserved word was designed for, at least so far as generics/templates overlap.  This may be one of the biggest selling points for the established C++ community!</description></item><item><title>RE: Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#51028</link><pubDate>Fri, 21 Nov 2003 22:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:51028</guid><dc:creator>vince</dc:creator><description>I've been generally impressed with VC++ 2003's template support. Well done! 

Usually in only takes a couple days for me to get a new VC++ to ICE but it took two months with 2003 (quite the challenge!).

But today I finally ran across something that will ICE the compiler - I'm having trouble finding where to submit bugs on MSDN (they seem to rearrange it every week), so I'll post here (this is 100% reproducible):

Create a Win32 DLL project, and just stick this in the CPP

// begin code
class A;
template &amp;amp;lt;class T&amp;amp;gt;
class Foo
{
};

typedef Foo&amp;amp;gt;A&amp;amp;lt; FooA;

// note: i realize this is incorrect syntax
// this line causes the compiler to ICE. While it is definitely a compiler error, it shouldn't ICE.
// the ICE is in compiler file 'msc1.cpp', line 2701
extern template class __declspec(dllexport) FooA;
</description></item><item><title>C# Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#65901</link><pubDate>Sun, 01 Feb 2004 23:43:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:65901</guid><dc:creator>Simply Patrick</dc:creator><description>???? C# Generics ?????: An Introduction to C# Generics by Juval Lowy Brandon Bray ? C++ Templates ? C# Generics ??????????...</description></item><item><title>Templates vs Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#145617</link><pubDate>Tue, 01 Jun 2004 20:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145617</guid><dc:creator>LA.Net </dc:creator><description /></item><item><title>re: Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#170838</link><pubDate>Thu, 01 Jul 2004 13:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:170838</guid><dc:creator>e2wind</dc:creator><description>Thanks Andrew! You're right about derivation from type parameters. I updated the entry to mention that.</description></item><item><title>Comparing .NET Generics and C   Templates on Developer.com</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#176043</link><pubDate>Thu, 08 Jul 2004 09:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:176043</guid><dc:creator>BufferOverrun</dc:creator><description /></item><item><title>Comparing .NET Generics and C   Templates on Developer.com</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#182647</link><pubDate>Wed, 14 Jul 2004 04:13:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:182647</guid><dc:creator>BufferOverrun</dc:creator><description /></item><item><title>Custom Attributes</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#184155</link><pubDate>Thu, 15 Jul 2004 18:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:184155</guid><dc:creator>Anderson on...</dc:creator><description /></item><item><title>Are Generics in .NET like Templates in C  ?</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#199942</link><pubDate>Wed, 28 Jul 2004 20:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:199942</guid><dc:creator>C# Frequently Asked Questions</dc:creator><description /></item><item><title>Are Generics in .NET like Templates in C  ?</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#199947</link><pubDate>Wed, 28 Jul 2004 20:43:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:199947</guid><dc:creator>C# Frequently Asked Questions</dc:creator><description /></item><item><title>re: Templates and Generics</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#200702</link><pubDate>Thu, 29 Jul 2004 14:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:200702</guid><dc:creator>Free</dc:creator><description>Nice overview of the difference between generics and templates! The best I have seen on the web yet.</description></item><item><title>OOPSLA</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#256134</link><pubDate>Fri, 12 Nov 2004 04:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:256134</guid><dc:creator>Word on the street</dc:creator><description>Went to OOPSLA a couple of weeks ago, and it really blew me away. Steve McConnell and Herb Sutter are both amazing speakers, and Herb's talk on the new C++ extensions rocked. I can't wait until Visual Studio 2005 officially...</description></item><item><title>STL.NET: generics and templates</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#446223</link><pubDate>Tue, 02 Aug 2005 00:38:03 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:446223</guid><dc:creator>TexBlog</dc:creator><description>&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Developer.com posted &lt;br&gt;a&amp;amp;amp;nbsp;pithy &lt;br&gt;article today on STL.NET.&amp;amp;amp;nbsp; This whole templates...</description></item><item><title>where - Visual C++</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#447804</link><pubDate>Thu, 04 Aug 2005 22:19:40 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:447804</guid><dc:creator>社本＠ワック Blog</dc:creator><description>where - Visual C++</description></item><item><title>where - Visual C++</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#447806</link><pubDate>Thu, 04 Aug 2005 22:19:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:447806</guid><dc:creator>社本＠ワック Blog</dc:creator><description>where - Visual C++</description></item><item><title>Interesting Finds: July 12, 2006</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#664012</link><pubDate>Thu, 13 Jul 2006 06:12:02 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:664012</guid><dc:creator>Jason Haley</dc:creator><description /></item><item><title>Acme Code Corp.</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#1445521</link><pubDate>Wed, 10 Jan 2007 22:19:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1445521</guid><dc:creator>Adam Singer</dc:creator><description>&lt;p&gt;One of the major missing features in the 1.0 and 1.1 .NET Framework was generics (similar to &amp;quot;templates&amp;quot;&lt;/p&gt;
</description></item><item><title>C  : Template Specialization</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#1462358</link><pubDate>Sat, 13 Jan 2007 23:22:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1462358</guid><dc:creator>Ayende @ Blog</dc:creator><description>&lt;p&gt;C : Template Specialization&lt;/p&gt;</description></item><item><title>Comparing Object-Oriented Features of Delphi, C  , C# and Java</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#2555257</link><pubDate>Sat, 12 May 2007 02:28:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2555257</guid><dc:creator>bookjohn</dc:creator><description>&lt;p&gt;This document attempts to compare some of the object oriented features available in the Delphi, C , C# and Java programming languages. Introductory paragraphs to each section to explain the concept being compared in the section are available, but are&lt;/p&gt;
</description></item><item><title>RAD Studio Roadmap Updated - Page 13 | keyongtech</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#9338407</link><pubDate>Sun, 18 Jan 2009 20:29:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9338407</guid><dc:creator>RAD Studio Roadmap Updated - Page 13 | keyongtech</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.keyongtech.com/1317384-rad-studio-roadmap-updated/13"&gt;http://www.keyongtech.com/1317384-rad-studio-roadmap-updated/13&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>Why no language improvements? - Page 15 | keyongtech</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#9365419</link><pubDate>Thu, 22 Jan 2009 12:25:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9365419</guid><dc:creator>Why no language improvements? - Page 15 | keyongtech</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.keyongtech.com/4480720-why-no-language-improvements/15"&gt;http://www.keyongtech.com/4480720-why-no-language-improvements/15&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Visual C Internals and Practices Templates and Generics | Paid Surveys</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#9660573</link><pubDate>Sat, 30 May 2009 02:23:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9660573</guid><dc:creator> Visual C Internals and Practices Templates and Generics | Paid Surveys</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://paidsurveyshub.info/story.php?title=visual-c-internals-and-practices-templates-and-generics"&gt;http://paidsurveyshub.info/story.php?title=visual-c-internals-and-practices-templates-and-generics&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Visual C Internals and Practices Templates and Generics | Insomnia Cure</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#9709565</link><pubDate>Tue, 09 Jun 2009 00:51:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9709565</guid><dc:creator> Visual C Internals and Practices Templates and Generics | Insomnia Cure</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://insomniacuresite.info/story.php?id=19"&gt;http://insomniacuresite.info/story.php?id=19&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Visual C Internals and Practices Templates and Generics | Menopause Relief</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#9720196</link><pubDate>Wed, 10 Jun 2009 04:15:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9720196</guid><dc:creator> Visual C Internals and Practices Templates and Generics | Menopause Relief</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://menopausereliefsite.info/story.php?id=1013"&gt;http://menopausereliefsite.info/story.php?id=1013&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Visual C Internals and Practices Templates and Generics | alternative dating</title><link>http://blogs.msdn.com/branbray/archive/2003/11/19/51023.aspx#9768673</link><pubDate>Wed, 17 Jun 2009 11:06:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9768673</guid><dc:creator> Visual C Internals and Practices Templates and Generics | alternative dating</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://topalternativedating.info/story.php?id=4348"&gt;http://topalternativedating.info/story.php?id=4348&lt;/a&gt;&lt;/p&gt;
</description></item></channel></rss>