Building Windows Runtime Components with C++

Want to know how to write cool tablet apps using Visual C++? To kick off our day of Metro style programming in VC++, this talk will begin with an overview of how the WinRT type system is projected in Visual C++, then delve into how easy it is to use fast and portable C++, UIs built using XAML or DirectX or both, and powerful parallel computation from std::async and PPL to automatic vectorization and C++ AMP to harness powerful mobile GPUs... and use any or all of those tools together easily in any combination within the same Visual C++ application, delivering beautiful and responsive results on today's mainstream mobile hardware.
Great talk, thanks Herb!
Can't wait to download some high res MP4's of these sessions. It's great to see MS re-discovering C++ again, makes me much happier about the platform. Looking forward to getting my paws on some cheap WOA hardware to try this out on.
I really enjoyed this conference! It offered tons of info in a short amount of time, yet stuck true to the Metro philosophy and got me from point A to point B. Now I can feel confident developing a metro app in C++, and show off how easy it was to the C# devs!
@Aaron: Right on!
C
Itching it watch this session... but alas still down downloadable video... [sigh]
My C++ personality is starting to get withdrawals... Please provide it with some fresh C++ - please C, your're my only hope!
I think Charles takes secret pleasure in watching us squirm :P.
@C Rock n' Roll!
Here you go! Thanks to Larry and Golnaz for filming this event!!
C
Are there any guidelines what kind of apps are suitable for being a Metro app? So far the examples have been viewing recipes in a cookbook and viewing flower pictures in an album. I don't think there'll ever be a Metro app that can do anything useful.
I just tried Windows 8 in a virtual machine. Sorry, but this Metro UI is just unusable.
@Chris: Start here: https://msdn.microsoft.com/en-US/library/windows/apps/hh464920
C
Its a shame it comes with "programmers can't manage memory" reference counting magic. Want to use Windows::System::Threading::ThreadPool::RunAsync to call a delegate on some reference class instance? - well constructing a delegate won't increase the reference count... this and other confusing to debug errors await. Let me manage my own memory - when I write a whole game and the one leak that can be found comes out of reference counting (I refer to an iOS/OS X game) I get the distinct impression that I am better at managing memory myself than any of these "automatic" systems...
Want to block on the main thread for 1ms as part of timesliced logic? Again MS don't trust you to be a good enough programmer... there are exceptions thrown if you stall the main thread using ppl.
I wouldn't mind if this stuff was better implemented and solved problems I actually have... I get that most programmers are too inept to manage their own memory and struggle with threading, but frankly, I'm not.
Not to mention the limitations on using DirectX with XAML and the blatant unfinished-ness of the platform at large...
@Semi
Everyone says they are better off managing their own memory, yet every app is full of errors and vulnerabilities. Somehow I don't believe you after everything I've seen in the code auditing business.
Very much enjoyed this talk and the others. Thanks to the organizers for putting this together.
Disappointed to hear today that MS is blocking the C++11 compiler in VS 11 Express from targeting desktop applications. How can MS supposedly support OSS so strongly with Codeplex, ASP.NET, etc, and then turn around and do this?
This event wasn't called "Developing Windows 8 Metro style apps with C++" because C++ would be some ultimate language for writing Metro apps. It's because the C++ community would be the first to abandon Metro and you guys tried to prevent it.
You decisions are now getting some media coverage. I think you're going down. http://arstechnica.com/information-technology/2012/05/no-cost-desktop-software-development-is-dead-on-windows-8/
@Jason:
If you watch - and listen - to the presentations here it should be abundantly clear that C++ is an excellent language to use for building high performance (employing GPGPU programming techniques via C++ AMP and/or CPU-based async/parallelism using PPL), power efficient, powerful Windows 8 Metro style apps, games and cross language consumable WinRT components...
You get to use C++ + XAML + DirectX to push the limits of user experience. You can - if you want or need to - program directly at the ABI (just like WinRT itself...) using an ATL-like library (WRL).
This is the wrong thread for the Express 11 debate. This thread - this event - is about C++ (including Windows platform-specific extensions) applied to Metro application, game and component development.
C
Great Prasentation, thanks Herb!
Is anybody here puzzled by Herb's excessive body language ?
It is so distracting and it's still evading my understanding what
those gestures mean :(