An implementation of C# style properties in C++