遇到一个名字污染

做测试的时候,写这句代码出现了问题

int iLength = std::numeric_limits<float>::max();

编译不过,vs2013,win7旗舰,在max上f12进的是minwindef.h 文件中的max宏。

所以怀疑是名字互相干扰了。

在stdafx.h中是添加了很多头文件。如下:

#include <vector>
#include <algorithm>
#include <map>
#include <set>
#include <list>
#include <bitset>
#include <fstream>
#include <memory>
#include <sstream>
#include<iostream>
#include <limits>
using namespace std;
#include "Windows.h"

怀疑Windows.h,移了几个位置也没用。

明天再看看。。。

原文地址:https://www.cnblogs.com/xiarl/p/3539816.html