Solaris C++流输入>>操作员和模板模板

Ste*_*eve 4 c++ templates compiler-errors

我有一个编译器选项,我可以在CC编译器中使用以获取以下代码(在Visual C++中编译良好)

std::vector<std::vector<double>> v2;
Run Code Online (Sandbox Code Playgroud)

没有以下错误

错误:","而不是">>"

Pra*_*rav 13

试试这个 :

std::vector<std::vector<double> > v2; //give a space between two '>'

" >>"被解释为右移位运算符,因此您得到编译时错误.

这个问题将在C++ 0x中修复.看看这里.

  • 还有一个原因,我不能等待C++ 0x最终确定:) (2认同)
  • 我认为它是一个MSVC++扩展. (2认同)

Zoo*_*ork 5

你需要在两个大于号之间留一个空格:

std::vector<std::vector<double> > v2;
Run Code Online (Sandbox Code Playgroud)

否则,">>"被视为单个标记.


Ray*_*ond 5

std::vector<std::vector<double> > v2;
Run Code Online (Sandbox Code Playgroud)

你需要添加一个空格,否则它将被解释为>>运算符.