{"id":114,"date":"2006-02-24T11:38:41","date_gmt":"2006-02-24T16:38:41","guid":{"rendered":"http:\/\/bitpost.com\/news\/2006\/02\/24\/visual-studio-2005-and-boost-compatibility\/"},"modified":"2006-04-07T10:10:54","modified_gmt":"2006-04-07T15:10:54","slug":"visual-studio-2005-and-boost-compatibility","status":"publish","type":"post","link":"https:\/\/bitpost.com\/news\/2006\/visual-studio-2005-and-boost-compatibility\/","title":{"rendered":"Visual Studio 2005 and boost compatibility"},"content":{"rendered":"<p>I was hoping to start using Visual Studio 2005 as my primary Windows compiler, but this warning from the <a target=\"_blank\" href=\"http:\/\/boost.org\">boost home page<\/a> was holding me back:<\/p>\n<blockquote><p>Note: Boost does not support the                           non-standard &#8220;Safe&#8221; C++ Library shipping with                           Visual C++ 8.0, which may result in many spurious                           warnings from Boost headers and other                           standards-conforming C++ code. To suppress these                           warnings, define the macro                           <code>_SCL_SECURE_NO_DEPRECATE<\/code>.<\/p><\/blockquote>\n<p><!--more-->Digging further on boost.org&#8230;<\/p>\n<blockquote><p>The implementation of the standard C++ library bundled with   Visual C++ .NET 2005 might issue a number of spurious   warnings <em>feature is deprecated<\/em> when using Boost headers. The   warnings come from the &#8220;Safe&#8221; C++ Library, which labels many   standard C and C++ library constructs as deprecated when in fact   they may be used safely and   correctly. Define <code>_SCL_SECURE_NO_DEPRECATE<\/code> globally to   eliminate these errors. Alternatively, you can enclose all includes   of Boost headers and C++ standard library headers with <code>#pragma       warning(disable:4996)<\/code>, as demonstrated below:<\/p><\/blockquote>\n<blockquote>\n<blockquote>\n<pre>#pragma warning(push)\r\n#pragma warning(disable : 4996)<\/pre>\n<pre>#include\r\n#include\r\n#include\r\n#include\r\n#include<\/pre>\n<pre>#pragma warning(pop)<\/pre>\n<\/blockquote>\n<\/blockquote>\n<p>So it sounds like Microsoft is basically saying &#8220;don&#8217;t use these standard C++ features as we&#8217;ve found them to be unsafe&#8221;.  Fair enough, and it seems fairly harmless if  you can easily disable the warnings.  I&#8217;ve heard that Microsoft has a whole range of features that are illegal for including in any newly submitted code, e.g. all the crappy C string routines &#8211; MAN how much pain have THEY caused over their lifetimes.  Wow, I just agreed with Microsoft.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I was hoping to start using Visual Studio 2005 as my primary Windows compiler, but this warning from the boost home page was holding me back: Note: Boost does not support the non-standard &#8220;Safe&#8221; C++ Library shipping with Visual C++ 8.0, which may result in many spurious warnings from Boost headers and other standards-conforming C++ [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"enabled":false},"version":2}},"categories":[10,2],"tags":[],"class_list":["post-114","post","type-post","status-publish","format-standard","hentry","category-tricks-tips-tools","category-chatter"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9M11L-1Q","jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/posts\/114","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/comments?post=114"}],"version-history":[{"count":0,"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/posts\/114\/revisions"}],"wp:attachment":[{"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/media?parent=114"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/categories?post=114"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitpost.com\/news\/wp-json\/wp\/v2\/tags?post=114"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}