矢量中的双v会被误读
double chevrons in a vector gets misread?
在《Accelerated c++》一书中指出,如果你像这样声明一个向量的向量:
vector<vector<int>> foo;
可能会产生错误,因为>>可能被误读为操作符,所以实际上应该这样写:
vector<vector<int> > foo;
然而,我使用第一种方式编写的这些结构的代码似乎可以工作。这是我应该遵循的现代惯例吗?
c++的当前版本(c++ 11)已经使第一个版本合法。一些编译器总是接受它(在技术上对c++ 03是错误的)。第二个版本更安全,兼容范围更广。
相关文章:
- 没有找到相关文章