嘿,我是 C++ 菜鸟(以及一般编码) 我正在寻找一种简单的方法,从键盘上(一次)获取两个 double 并将它们存储在我创建的名为“Point”的结构中,然后最终将 Point 存储到作为类成员的 Points vector 中(称为“多边形”)。 我知道我可以用 scanf 做到这一点,但需要知道如何用 cin 做到这一点。
希望这是有道理的。
提前致谢
朱兹
最佳答案
另一种方法是重载>>,以便它直接在您的结构上运行:
struct Point {
int x;
int y;
friend std::istream& operator >>(std::istream& stream, Point& p) {
return stream >> p.x >> p.y;
}
}
您返回流,以便可以像使用内置类型一样链接输入:cin >> p1 >> p2 >> p3
。在这种特定情况下,运算符(operator)可以是一个独立的功能,而不是 friend ,但一般来说, friend 更容易合作。
This提供了很多关于此类事情的有用细节。
关于c++ - C++ 中的格式化输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2557729/