错误信息: non-aggregate type ‘vector’ cannot be initialized with an initializer list
-
问题出在g++编译的标准上。Mac的编译器默认是只支持C++98的标准的
-
因此,系统不出错的方法就是更换标准,具体方法如下:
g++ a.cpp
改为g++ -std=c++11 a.cpp
-
如果觉得这样很繁琐,可以直接将该命令简化为g++:
echo "alias g++='g++ -std=c++11'" >> ~/.bash_profile"
-
这样以后输入
g++
就相当于输入g++ -std=c++11 a.cpp
了