如何解决无法在 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 举报,一经查实,本站将立刻删除。