求助:error C2679: 二进制“=”: 没有找到接受“int *”类型的右操作数的运算符(或没有可接受的转换)

囧囧骚年 2015-11-22 08:22:01
int main(int argc,char* argv[])
{
int a[] = { 10, 20, 30, 40, 50 };
vector<int> v1(a, a + 5);
v1[2] = 70;
if (equal(v1.begin(), v1.end(), a))
{
cout << "两个序列内容相等" << endl;
}
else
{
cout << "两个序列内容不相等" << endl;
}

pair<vector<int>::iterator, vector<int>::iterator> pair1;
pair1 = mismatch(v1.begin(), v1.end(), a);
cout << "v1(" << *(pair1.first);
cout << ") and v2(" << *(pair1.second) << ")" << endl;
return 0;



}
出现错误:error C2679: 二进制“=”: 没有找到接受“int *”类型的右操作数的运算符(或没有可接受的转换)




int main(int argc, char* argv[])
{
//int a[] = { 10, 20, 30, 40, 50 };
//vector<int> v1(a, a + 5);
//v1[2] = 70;
vector<int> v;
v.push_back(10);
v.push_back(20);
v.push_back(30);
v.push_back(40);
v.push_back(50);
vector<int> v1;
v1.push_back(10);
v1.push_back(20);
v1.push_back(70);
v1.push_back(40);
v1.push_back(50);

if (equal(v1.begin(), v1.end(), v.begin()))
{
cout << "两个序列内容相等" << endl;
}
else
{
cout << "两个序列内容不相等" << endl;
}

pair<vector<int>::iterator, vector<int>::iterator> pair1;
pair1 = mismatch(v1.begin(), v1.end(), v.begin());
cout << "v1(" << *(pair1.first);
cout << ") and v2(" << *(pair1.second) << ")" << endl;
return 0;



}

运行成功

为什么?
...全文
1052 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
囧囧骚年 2015-11-23
  • 打赏
  • 举报
回复
引用 1楼pcboyxhy 的回复:
pair<vector<int>::iterator, int *> pair1;
谢谢啦,
pcboyxhy 2015-11-22
  • 打赏
  • 举报
回复
pair<vector<int>::iterator, int *> pair1;

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧