c语言程序警告的原因,C Boost:这个警告的原因是什么?

我有一个简单的C与Boost像这样:

#include

int main()

{

std::string latlonStr = "hello,ergr()()rg(rg)";

boost::find_format_all(latlonStr,boost::token_finder(boost::is_any_of("(,)")),boost::const_formatter(" "));

这工作正常;它用一个“”替换每次出现的()

但是,我在编译时收到此警告:

我使用MSVC 2008,Boost 1.37.0。

1>Compiling...

1>mainTest.cpp

1>c:\work\minescout-feat-000\extlib\boost\algorithm\string\detail\classification.hpp(102) : warning C4996: 'std::copy': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators'

1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility(2576) : see declaration of 'std::copy'

1> c:\work\minescout-feat-000\extlib\boost\algorithm\string\classification.hpp(206) : see reference to function template instantiation 'boost::algorithm::detail::is_any_ofF::is_any_ofF<:iterator_range>>(const RangeT &)' being compiled

1> with

1> [

1> CharT=char,

1> IteratorT=const char *,

1> RangeT=boost::iterator_range

1> ]

1> c:\work\minescout-feat-000\minescouttest\maintest.cpp(257) : see reference to function template instantiation 'boost::algorithm::detail::is_any_ofF boost::algorithm::is_any_of(RangeT (&))' being compiled

1> with

1> [

1> CharT=char,

1> RangeT=const char [4]

1> ]

我可以禁用使用的警告

-D_SCL_SECURE_NO_WARNINGS

但我有点不愿意这样做,我发现什么错,或更重要的是,如果我的代码不正确。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值