Yes, you absolutely can, real native C ++ is fully supported.
However, as a rule, you have to use the new WinRT libraries to make the user interface or system calls, and although they are internal code and can be directly derived from C ++ directly, the interface makes it very painful for them to do this, since all reference counted is an object and, in addition, it is not so easy to create instances from them, as it is just calling "new" ones, so you need to write a lot of ugly code for this.
As the answer said earlier, microsoft provides two ways to help with this. One through language extensions to C ++, and the other through a C ++ template library. Personally, I believe that both are pretty ugly in order to do something as simple as calling an API, but that's just me :)
But to answer your question, it is quite possible to write your application in real native C ++. You do not need to use managed code at all. But you probably want to use either language extensions or a template library to simplify the API call.
Personally, I hope someone writes a wrapper for WinRT that provides the most necessary functionality as a more usable C ++ native library, and then anyone can just use it from C ++ instead ...
source share