我继承了一个 2014 年编写的 C++ 项目,并且确实使用 GCC 4.8 进行编译。在一个特定的文件中,当前在<random>C++ 标准库的头文件中找到的几个类被实例化。其中包括mt19937、random_device、uniform_real_distribution和normal_distribution。
当我使用 GCC 7.3 编译此文件时,我收到一条错误消息,指出这些类未在std命名空间中定义。当我包含<random>.
我的问题是为什么在 GCC 4.8 中不会发生此错误?这些类以前是在不同的标题下找到的吗?