1 / 22

Visual C++: 10 is the New 6

TL13. Visual C++: 10 is the New 6.  Boris Jabes Program Manager Lead Microsoft Corporation. "10 is the new 6" – Why?. Make VC10 the most productive IDE for native development. More Than a Motto. Focus on native code Nail the basics Scale to millions of lines of code

devona
Download Presentation

Visual C++: 10 is the New 6

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TL13 Visual C++: 10 is the New 6  Boris Jabes Program Manager Lead Microsoft Corporation

  2. "10 is the new 6" – Why? Make VC10 the most productive IDE for native development

  3. More Than a Motto • Focus on nativecode • Nail the basics • Scaleto millions of lines of code • Make it easy to extend http://www.flickr.com/photos/chelseagirlphotos/227011345/

  4. demo A lap around VC10

  5. Recap • Simplified deployment • Updates to MFC • C++0x standard • New IDE architecture • Native concurrency primitives • Related talks • TL25 - Parallel Programming for C++ Developers in the Next Version of Microsoft Visual Studio • PC26 - Building Applications with MFC

  6. A new IDE architecture • Responsiveness • Scale • Accuracy • Extensibility http://www.flickr.com/photos/orangeacid/2658278904/

  7. Scale & Accuracy • Cleanup • NCB is no more! • Constant “Updating Intellisense…” gone! • Intellisense based on live compilation • Performance is O(1) w.r.t. solution size! • Symbol indexing & navigation based on SQL • Incremental updates • Index that scales to millions of symbols • Source-oriented (e.g. “void foo(TCHAR c)”)

  8. Extensibility • A unified project system • MSBUILD-based build system • Custom Tools & Platforms • Native Multi-Targeting • A new editor experience • Extensibility based on MEF

  9. demo Plugging into the Editor

  10. Adhering to C++0x Standard • What we’ve got • Lambdas, rvalue references, auto, static_assert • TR1 standard library • What’s coming • Concepts • Variadic Templates • Keywords: decltype, nullptr, __func__ • Thread Library • Container Initializers

  11. Lambdas • “an expression that specifies an anonymous function object” int main() { int sum = 0; auto f = [&sum] (int x) -> bool { return (x%2 == 0) ? ++sum : false; }; f(1); f(2); }

  12. Lambdas • “an expression that specifies an anonymous function object” int main() { int sum = 0; auto f = [&sum] (int x) -> bool { return (x%2 == 0) ? ++sum : false; }; f(1); f(2); }

  13. Lambdas • “an expression that specifies an anonymous function object” int main() { int sum = 0; auto f = [&sum] (int x) -> bool { return (x%2 == 0) ? ++sum : false; }; f(1); f(2); }

  14. Lambdas • “an expression that specifies an anonymous function object” int main() { int sum = 0; auto f = [&sum] (int x) -> bool { return (x%2 == 0) ? ++sum : false; }; f(1); f(2); }

  15. Lambdas • “an expression that specifies an anonymous function object” int main() { int sum = 0; auto f = [&sum] (int x) -> bool { return (x%2 == 0) ? ++sum : false; }; f(1); f(2); }

  16. Final Note

  17. Related Talks • PC26 - Building Applications with MFC • TL32 - Customizing and Extending the Development Environment • TL33 - Managed Extensibility Framework: Overview • TL25 - Parallel Programming for C++ Developers in the Next Version of Microsoft Visual Studio

  18. Additional Resources • http://blogs.msdn.com/vcblog • http://channel9.msdn.com/tags/C++ • borisj@microsoft.com

  19. Q & A

  20. Evals & Recordings Please fill out your evaluation for this session at: This session will be available as a recording at: www.microsoftpdc.com

  21. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related