I don't understand. I have written a C++ library. With it, I only declare a C++ class, with some functions and members. During the declaration I add some characteristics to the functions and members (but I can set them automatically), and that gives me automatically reflection, scripting, serializing, remote calls class written.. for the elements that I have chosen. I could do a lot more functionnality (tuple generation etc...). I can choose for which function I want scripting enable or not, functor declared or not etc... This is pure C++. And use only the declaration (so no function is at that moment coded, only the declaration is written).Even then, you can't compete with a language like C# - especially when doing reflection.
So since the declaration only allows me to generate all these functionnalities (without any moc compiler or anything like this), I don't see how C# could do better (which might not be surprising sice I don't know much C#) ?