c++ - 重载 C++ 运算符 >> 这样我就可以读取一个 vector (vector <int> vector;)

标签 c++ vector overloading operator-keyword

我想知道如何重载 >> 运算符,这样我就可以读取 vector 或矩阵,只需执行 cin >> vector vector()。

谢谢!

最佳答案

  template <typename T>
  std::istream& operator>>(std::istream& is, std::vector<T>& v) {
    std::copy(std::istream_iterator<T>(is), std::istream_iterator<T>(),
              std::back_inserter(v));
    return is;
  }

关于c++ - 重载 C++ 运算符 >> 这样我就可以读取一个 vector (vector <int> vector;),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28918102/

相关文章:

r - 如何交换 R 中两列中的值?

c++ - 如何将具有一定数量单词的 vector<string> 的输出读取到一行?

c++ - 我必须重载哪个运算符?

c++ - 对象集的排序不正确

c++ - 为什么我不能在复制构造函数中使用 getter?

c++ - 使用 boost::copy_graph 从 grid_graph 复制到 adjacency_list

c++ - Qt/c++ QGraphicsItem 绑定(bind)到自定义类

c++ - vector 的返回类型

c# - C#如何解决不同的扩展方法重载?

c++ - 使用抽象类实现派生类的元素栈