C++ 无法使用CPP中的向量打印间隔 使用名称空间std; 无效打印(标准::矢量a) { 对于(int i=0;i>y; a、 推回({x,y}); } 印刷品(a); 返回0; }

C++ 无法使用CPP中的向量打印间隔 使用名称空间std; 无效打印(标准::矢量a) { 对于(int i=0;i>y; a、 推回({x,y}); } 印刷品(a); 返回0; },c++,visual-c++,c++17,C++,Visual C++,C++17,试试这个 #include <iostream> #include <vector> using namespace std; void print(std::vector<pair<int, int>> a) { for (int i = 0; i < a.size(); i++) { std::cout << "Original " << a[i].first <

试试这个

#include <iostream>
#include <vector>
using namespace std;

void print(std::vector<pair<int, int>> a) {
    for (int i = 0; i < a.size(); i++) {
        std::cout << "Original " << a[i].first << "," << a[i].second;
    }
}

int main()
{
    vector<pair<int, int> > a;
    for (int i = 0; i < 3; i++) {
        int x, y;
        cin >> x >> y;
        a.push_back({x, y});
    }
    print(a);

    return 0;
}
#包括
#包括
使用名称空间std;
无效打印(标准::矢量a){
对于(int i=0;i
您的
print()
函数应具有
无效打印(向量a)
的签名

print()
函数中,您试图直接打印
a[i]
,但
a[i]
是一对
对。您需要分别打印
对中的每个值。例如:

cout << "Original " << a[i].first << "," << a[i].second;

cout路过const ref更好。非常感谢兄弟在这方面的帮助