我已经创建了自己的类型,没有任何比较器,也没有std::numeric_limits的专门化。尽管如此,出于某种原因,std::numeric_limits<MyType>编译得很好。为什么c++标准委员会定义numeric_limits模板,使其对所有类型都有效,包括非数字类型?instead of 0public:public:};
int mai
当我在我的计算机上这样做时,一切都进行得很好;但是当我在另一台计算机上编译它时,它会产生许多关于INT32_MAX没有定义的声明。两台电脑都运行Debian系统,不同之处在于我的电脑使用的是测试回购,有gcc 4.9,另一台电脑使用的是稳定回购,后者稍早于gcc 4.7。令人惊讶的是,在声称未定义宏的计算机上,所有int范围宏都在非C++条件下定义: * I forget the exact definition,
* but it looks l