C++开发--在Visual Studio2013中使用boost::split()编译过程中出现error C4996

Visual Studio is being overly cautious.  In debug mode, visual studio uses something called "Checked Iterators".  Pointers are also iterators, but the checking mechanism doesn‘t work with them.  So when a standard library algorithm is called with pointers, which is something that boost::split does, it issues this warning.

You‘ll get the same warning with this obviously safe code:

1 int main()
2 {
3     int x[10] = {};
4     int y[10] = {};
5     int *a = x, *b = y;
6     std::copy(a, a+10, b);
7 }

Disable the warning.  It‘s for beginners.  It‘s on by default for the safety of beginners, because if it was off by default, they wouldn‘t know how to turn it on.

Add -D_SCL_SECURE_NO_WARNINGS to the command line.  In the IDE, you can go to "Project -> Properties -> C/C++ -> Command Line" and add it in the additional options field.

ref:http://stackoverflow.com/questions/14141476/warning-with-boostsplit-when-compiling

时间: 2024-10-30 12:40:35

C++开发--在Visual Studio2013中使用boost::split()编译过程中出现error C4996的相关文章

编译过程中,termcap.h 文件找不到路径 licli.a终于生成

编译过程中,termcap.h      文件找不到路径 查看是linux  源码下找不到termcap.h文件 安装了所有关于*cap*的源码包也不起作用 今天终于解决了这个问题,搜termcap.h  发现一篇文章,如下 ----------------------------------------------------------------------------------------- 安装minicom2.3出现termcap.h错误解决方法 2010-05-06 17:12:

CUDA程序编译过程中产生警告的解决方法

有时候经常使用别人用Tabhost+其它的实现demo.单纯利用Tabhost该如何使用呢? 下面看例子: public class MainActivity extends TabActivity { public TabHost tabHost; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 获取对象 tabHost = getTabH

PHP编译过程中常见错误信息的解决方法

PHP编译过程中常见错误信息的解决方 checking for BZip2 support- yes checking for BZip2 in default path- not found configure: error: Please reinstall the BZip2 distribution Fix: yum install bzip2-devel checking for cURL support- yes checking if we should use cURL for

LAMP系列之PHP编译过程中常见错误信息的解决方法

LAMP系列之PHP编译过程中常见错误信息的解决方法 在CentOS编译PHP5的时候有时会遇到以下的一些错误信息,基本上都可以通过yum安装相应的库来解决.以下是具体的一些解决办法: ******************************************************************************* checking for BZip2 support- yes checking  for BZip2 in default path- not foun

nginx源码编译以及源码编译过程中遇到的问题

原帖地址:https://www.cnblogs.com/operationhome/p/8964191.html 本文主要讲nginx安装以及安装过程中遇到的问题. 谈到nginx 必须聊聊它的起源和发展. nginx是由俄罗斯工程师Igor Sysoev 用C语言开发的一个免费开源的Web服务器软件,于2004年发布,聚集轻量级.高并发.高性能.低消耗等一系列优点.目前Nginx是互联网上仅次于Apache的第二流行的Web服务器软件. 接下来我们开始安装nginx,我们下面是以centos

编译过程中的链接地址对最终编译镜像文件的影响

MDK和交叉编译工具编译时都会指定程序的下载的地址(其实就是告诉程序它将在那个地址上开始执行),这有什么意义吗? 其实这么设计有原因的,因为这里涉及到全局变量和全局函数指针的地址问题,加入当你在编译时指定编译器这段程序会在0x0c000000地址上运行,因此全局变量和全局函数指针就会从0x0c000000上开始分配地址,此时如果你把这段程序烧录到0x0c000000地址上运行,变量的访问和指令存取不会有人任何问题,但是如果你将程序下载到0x00000000上运行时,在程序会在访问全局变量时,实际

Jenkins编译过程中出现ERROR_ Failed to parse POMs错误

一.在使用jenkins编写过程中突然出现以下问题 Parsing POMs Established TCP socket on 59407 [java] $ java -cp /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.12-alpha-1.jar:/usr/local/apache-maven-3.5.4/boot/plexus-classworlds-2.5.2.jar:/usr/local/apach

windows下vc6.0下的OpeSSL编译过程中的问题

我的机器环境是:window7 + vs2010 + vc6.0; 其实,在windows上用VS2010以上的工具来编译Openssl源码库很简单,估计大家都测试过,用VS2008及其以上的工具编译Openssl源码库就3行代码即可: perl Configure -WIN32 --prefix=d:/openssl ms\do_ms nmake -f ms\nt.mak vc6.0版本的openssl编译步骤如下: 1.打开命令提示符,找到vc6.0所在的bin目录,输入VCVARS32.B

关于s5pv210的配置、编译过程中相关文件的分析(Makefile、config.mk、mkconfig)

uboot为用户提供两种编译方式,一种是在uboot当前目录下进行编译,第二种方式就是将编译生成的文件输出到指定的目录下. 1) Add O= to the make command line # 'make O=/tmp/build all' # # 2) Set environement variable BUILD_DIR to point to the desired location # 'export BUILD_DIR=/tmp/build' # 'make' # # The se