如何获取类向量的输入?

我有一个POINT由 x 和 y 坐标组成的类。我有一个这个类的向量。如何从输入中获取坐标?我试过了,P.x.push_back(x)但显然它不起作用。我想知道如何实现这一目标?我想得到像 {{1, 3}, {5, 2}, {7, 2}} 这样的向量。

class POINT {
public:
    int x, y;
};

int main() {
    int n;
    cin >> n;
    vector<POINT> P(n);
    int x, y;
    for(int i = 0; i < n; i++) {
        cin >> x >> y;
        P.x.push_back(x);
        P.y.push_back(y);
    }
    return 0;
}

回答

如果您使用 C++11 或更高版本,则可以使用初始化列表

    for(int i = 0; i < n; i++) {
        cin >> x >> y;
        P.push_back({x, y});
    }

另一种方法是创建一个临时结构并推送(复制)它。这种方式在 C++03 中也可用。

    for(int i = 0; i < n; i++) {
        cin >> x >> y;
        POINT point = {x, y};
        P.push_back(point);
    }


以上是如何获取类向量的输入?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>