Question: What's wrong with this definition when using a pre-C++11 compiler?

  1. There's nothing wrong with it.
  2. An `std::vector` cannot contain more `std::vector` containers as its elements.
  3. The correct syntax should be: `std::vector[std::vector[int]] thematrix;`
  4. `>>` is parsed as the shift-right operator, and thus results in a compile error.

Answer: The correct answer of the above question is Option D:`>>` is parsed as the shift-right operator, and thus results in a compile error.