Solaris C ++ поток ввода >> оператор и шаблоны шаблонов - PullRequest
4 голосов
/ 18 декабря 2009

У меня есть опция компилятора, которую я мог бы использовать в компиляторе CC, чтобы получить следующий код (который прекрасно компилируется в Visual C ++)

std::vector<std::vector<double>> v2;

без следующей ошибки

Ошибка: "," ожидается вместо ">>"

Ответы [ 3 ]

13 голосов
/ 18 декабря 2009

Попробуйте это:

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

">>" интерпретируется как оператор сдвига вправо, и поэтому вы получаете ошибку времени компиляции.

Эта проблема будет исправлена ​​в C ++ 0x. Взгляните здесь .

5 голосов
/ 18 декабря 2009
std::vector<std::vector<double> > v2;

Вам нужно добавить пробел, иначе он будет интерпретирован как >> оператор.

5 голосов
/ 18 декабря 2009

Вам нужен пробел между двумя знаками больше, чем:

std::vector<std::vector<double> > v2;

В противном случае «>>» обрабатывается как один токен.

...