Corrections, explanations, etc.

First, I should apologize for the lack of postings lately.  A combination of server downtime/outages and apathy have kept me from making postings.  Now that we’re back up, I think I should clarify some of what I’ve said. Value types aren’t as grand as I make them out to be.  They’re designed by the CLR…


PtrToStringChars v2 remix

A while back, in order to get some code to compile, I had to update PtrToStringChars (found in vcclr.h) to work in the new Whidbey C++. In case anyone wants this, I’ve posted my implementation (and a small main() to drive it) here: Keep in mind: this is my personal implementation, and not necessarily…


Branbray on handles

I was going to give a short introduction to the C++ handle (^) today.  But, Brandon did such a good job, I think I’ll just link to his article.


Simple stack code

We’ve got a code sample today, of a simple integer stack implemented using Whidbey C++.  I’ll implement it using three pieces of code: stack.h – definition of the stack stack.cpp – implementation of the stack main.cpp – driver program that makes use of the stack I compile the stack class into a DLL (stack.dll), which…


The value type

Last time, I discussed the ref type.  This time, I’m going to talk about the value type.  This is the CLR type exposed in Managed Extensions by the __value keyword, and available in Whidbey C++ using the context-sensitive keyword value. What is a value type?  I view value types as a convenient way to lump…


The ref type

There are two major CLR types that we expose in Whidbey: ref and value. I’ll talk about ref types here, and about value types later. So, what is a ref type?  This is the same type that was exposed in Managed Extensions as __gc.  It is implicitly inherited from the CLR base type System::Object and has access…


Context-sensitive keywords

If you’ve used Managed Extensions, you’re familiar with the CLR types that __gc and __value exposed.  These have now been replaced with the context-sensitive keywords ref and value. Context-sensitive keywords?  That’s right.  We’ve made huge efforts (especially with respect to IJW work) to ensure that we don’t break our users’ code in our haste to add…


That crazy GC Heap

If you’re like me, the whole idea of a garbage collected heap seems, at first, contrarian to the C++ coder’s mentality.  As a breed, we’d prefer to handle memory (de-)allocations completely on our own.  But if you’re like me, and you’ve spent hours trying to figure out where that memory hole is coming from, then…



Do we really need another blog?  The short answer is: no.  The human race doesn’t need another blog.  In general, I’m not too fond of blogs.  But I think they can serve a useful purpose, and these GotDotNet blogs are the first bunch I’ve seen that actually do.  They aren’t mindless rantings (at least, not always) –…