解决宏定义与函数名冲突的问题

来源:互联网 发布:mysql从零开始学博客 编辑:程序博客网 时间:2024/05/17 00:03
毕竟典型的一个问题是<windows.h>里面的max和min的宏定义与
std::numeric_limits<std::streamsize>::max()和
std::numeric_limits<std::streamsize>::min()两个函数定义相互冲突。通常的情况是,如果包含了头文件windows.h,那么编译器会率先把它当成宏,从而报错,解决的办法有这么几个:方法一:用括号把调用函数的地方括起来,这个是用的比较多的方法,也是解决的比较好的方法例如:象这样用函数
(std::numeric_limits<std::streamsize>::max)()方法二:就是不包含宏定义的头文件方法三:取消掉对宏的定义#undef max
0 0
原创粉丝点击