我正在尝试编译一个使用别名声明的简单程序。
这是代码:
#include <iostream>
using namespace std;
using in = int;
in main ()
{
in a = 1;
cout << a << '\n';
return 0;
}
我用来编译的命令是g++ -std=c++0x program_name.cxx
,使用Ubuntu OS上Kate中的内置终端。
但它不起作用!有什么建议吗?
(而不是使用它typedef int in;
。)
答案 0 :(得分:4)
在C ++ 11模式下编译。仅在C ++ 11中支持Type aliasing。我怀疑使用的g++
版本较旧且不完全支持c ++ 11,因此c++0x
失败。
编译:{{1}}
顺便说一下,以这种方式对g++ -std=c++11 file.cpp
进行别名似乎是一个糟糕的主意。