{"id":2623,"date":"2012-02-03T08:30:00","date_gmt":"2012-02-03T08:30:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vcblog\/2012\/02\/03\/the-microsoft-c-compiler-turns-20\/"},"modified":"2021-10-04T13:04:25","modified_gmt":"2021-10-04T13:04:25","slug":"the-microsoft-c-compiler-turns-20","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cppblog\/the-microsoft-c-compiler-turns-20\/","title":{"rendered":"The Microsoft C++ Compiler Turns 20!"},"content":{"rendered":"<p><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2012\/02\/5315.image_4A0AFA02.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2012\/02\/5315.image_4A0AFA02.png\" alt=\"Microsoft C\/C++ 7.0\" width=\"184\" height=\"184\" class=\"alignleft size-full wp-image-29047\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2012\/02\/5315.image_4A0AFA02.png 184w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2012\/02\/5315.image_4A0AFA02-150x150.png 150w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2012\/02\/5315.image_4A0AFA02-24x24.png 24w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2012\/02\/5315.image_4A0AFA02-48x48.png 48w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2012\/02\/5315.image_4A0AFA02-96x96.png 96w\" sizes=\"(max-width: 184px) 100vw, 184px\" \/><\/a><\/p>\n<p>This month, we enter the third decade of C++ at Microsoft.<\/p>\n<p>It was twenty years ago, in February of 1992, that we released our first C++ compiler: Microsoft C\/C++ 7.0. Before then, we already worked with several of the C++ \u201cpreprocessor\u201d compilers that took C++ and converted it to C before our compiler then created the executable program. But starting in 1992, Microsoft\u2019s premier native compiler supported C++ directly, and has done so ever since.<\/p>\n<p>C\/C++ 7.0 shipped in a box that was over two feet long and produced MS-DOS, Windows and OS\/2 applications. It also sported the last of the character oriented development environments for C that we ever shipped \u2013 the following product was Visual C++, which built on what we had learned from delivering QuickC. Since those early days, we have shipped eleven major releases of C\/C++ products (ignoring small point upgrades) for both Windows and embedded development.<\/p>\n<p>This month, on the 20<sup>th<\/sup> anniversary of our first C++ compiler, we\u2019re looking forward to shipping the beta of Visual C++ 11. It includes support for ARM processors, Windows 8 tablet apps, C++ AMP for heterogeneous parallel computing, automatic parallelization, and the complete ISO C++11 standard library\u2026 and a few more of the new C++11 language features too.<\/p>\n<p>Last summer, we pledged to publish the C++ AMP specification as an open specification that any compiler vendor may implement, to target any operating system platform. Today, we published the <a href=\"http:\/\/download.microsoft.com\/download\/4\/0\/E\/40EA02D8-23A7-4BD2-AD3A-0BFFFB640F28\/CppAMPLanguageAndProgrammingModel.pdf\">C++ AMP open specification<\/a> to support using C++ for heterogeneous parallel computing on GPUs and multicore\/SSE today, with more to come in the future. Read the full announcement and download the specification at <a href=\"http:\/\/blogs.msdn.com\/b\/nativeconcurrency\/archive\/2012\/02\/03\/c-amp-open-spec-published.aspx\">the Native Concurrency blog<\/a>.<\/p>\n<p>Finally, to make this anniversary celebration complete, we\u2019re shifting gears to pick up speed: After Visual C++ 11 ships, you\u2019ll see us deliver compiler and library features more frequently in shorter out-of-band release cycles than our historical 2- or 3-year timeframe. And, of course, the first and most important target of those more agile releases is to deliver more and more of the incredible value in the new ISO Standard C++11 language. Please check <a href=\"https:\/\/channel9.msdn.com\/Events\/GoingNative\/GoingNative-2012\/C-11-VC-11-and-Beyond\">Herb Sutter&#8217;s keynote<\/a> at <strong>GoingNative 2012<\/strong> for further details.<\/p>\n<p>After 20 years, C++ is alive and well, and going stronger and faster than ever, not just at Microsoft but across our industry. Use it. Love it. And go native!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This month, we enter the third decade of C++ at Microsoft. It was twenty years ago, in February of 1992, that we released our first C++ compiler: Microsoft C\/C++ 7.0. Before then, we already worked with several of the C++ \u201cpreprocessor\u201d compilers that took C++ and converted it to C before our compiler then created [&hellip;]<\/p>\n","protected":false},"author":289,"featured_media":35994,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[115,107,65],"class_list":["post-2623","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cplusplus","tag-c-amp","tag-community","tag-compiler"],"acf":[],"blog_post_summary":"<p>This month, we enter the third decade of C++ at Microsoft. It was twenty years ago, in February of 1992, that we released our first C++ compiler: Microsoft C\/C++ 7.0. Before then, we already worked with several of the C++ \u201cpreprocessor\u201d compilers that took C++ and converted it to C before our compiler then created [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/2623","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/users\/289"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/comments?post=2623"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/2623\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media\/35994"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media?parent=2623"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/categories?post=2623"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/tags?post=2623"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}