VS2015--win32工程配置的一些想法之算法min/max与windows中的 min/max宏冲突
2016-01-27 23:07
309 查看
今天还是配置一个工程,遇到了这个问题,使用min时提示:输入正确的标识符。
看下面的代码:
如果把windows的头文件注释掉就不会发生错误。
问题的原因就是algorithm中的std::min与windows中min的宏定义产生了冲突。
注释windows头文件是一种解决方案。
另一种解决方案就是使用预处理器来屏蔽min:
项目属性 ——> C/C++ ——> 预处理器 ——> 预处理器定义 ——>加入NOMINMAX
看下面的代码:
[code]#include<iostream> #include<Windows.h> #include<algorithm> int main() { auto it = std::min(1, 2);//错误,应输入标识符 return 0; }
如果把windows的头文件注释掉就不会发生错误。
问题的原因就是algorithm中的std::min与windows中min的宏定义产生了冲突。
注释windows头文件是一种解决方案。
另一种解决方案就是使用预处理器来屏蔽min:
项目属性 ——> C/C++ ——> 预处理器 ——> 预处理器定义 ——>加入NOMINMAX
相关文章推荐
- nginx安装 nginx: [emerg] getpwnam(“www”) failed 错误
- 一个简单驱动的makefile
- javaweb学习总结(三十六)——使用JDBC进行批处理
- centos shell编程5 LANMP一键安装脚本 lamp sed lnmp 变量和字符串比较不能用-eq cat > /usr/local/apache2/htdocs/index.php <<EOF重定向 shell的变量和函数命名不能有横杠 平台可以用arch命令,获取是i686还是x86_64 curl 下载 第三十九节课
- 如何用React-Native Post Form 表单
- 一些想法(1)
- gerrit权限控制
- Android自动跳转activity
- 14.浮点数取余和自增自减
- hdu 5573 Binary Tree
- android网络请求网络连接状态判断 & 监控网络状态改变
- leetcode笔记:Count Primes
- 1027. 打印沙漏(20)
- linux查看当前用户id、whoami用户列表、用户组、用户权限/etc/passwd、/etc/group、/etc/shadow以及切换用户身份、su、sudo、/etc/sudoers
- javaweb学习总结(三十四)——使用JDBC处理MySQL大数据
- [转]Hibernate设置时间戳的默认值和更新时间的自动更新
- Linux学习之iptables
- [Java视频笔记]day06
- git pull命令将git服务器的文件更新到本地
- Linux 的 nginx 安装