微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法在 CPP 中使用矢量打印间隔

如何解决无法在 CPP 中使用矢量打印间隔

using namespace std;

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

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;
}

解决方法

试试这个

#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;
}
,

您的 print() 函数应该具有 void print(vector<pair<int,int>> a) 的签名。

在您的 print() 函数中,您尝试直接打印 a[i],但 a[i]pair<int,int>。您需要单独打印 pair 中的每个值。例如:

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。