我正在尝试在遗留代码库中删除memset
uniform initialization
。支持的最大GCC版本为4.4.7
。其他所有东西似乎都很好但是枚举。
#include <stdio.h>
#include <string.h>
#include <utility>
enum TT{xx,yy,zz};
TT p = {};
struct B{};
int main()
{
TT x = {};
x = {};
B r = {};
r = {};
}
它给我gcc4.4.7
的错误:
$ /opt/gcc-4.4.7/bin/g++ -Wall question.cpp -std=c++0x
question.cpp: In function ‘int main()’:
question.cpp:15: error: invalid conversion from ‘int’ to ‘TT’
是的,它确实在gcc4.8.5上编译。
我的问题是,如何才能使用我的gcc版本?