早教吧作业答案频道 -->其他-->
iteratornotdereferencable.#include"intset.h"#include#includeusingnamespacestd;typedefstd::setsetint;voidIntSet::insert(intn){setint::insert(n);}boolIntSet::IsEqual(IntSets1){set::iteratorita,itb;ita=setint::begin();itb=s1.begin();i
题目详情
iterator not dereferencable .
#include "intset.h"
#include
#include
using namespace std;
typedef std::set set_int;
void IntSet::insert(int n){
set_int::insert(n);
}
bool IntSet::IsEqual(IntSet s1){
set::iterator ita,itb;
ita= set_int::begin();
itb=s1.begin();
if( set_int::size()!=s1.size())
return false;
for(;ita!=set_int::end()&&itb!=s1.end();ita++,itb++){
if((*ita)!=(*itb))
return false;
}
return true;
}
//求s1 与s2 的并
IntSet IntSet::incorporate2(IntSet s1,IntSet s2){
IntSet ss;
set::iterator it;
for(it=s1.begin();it!=s1.end();it++)
ss.insert(*it);
for(it=s2.begin();it!=s2.end();it++)
ss.insert(*it);
return ss;
}
//求s1 与s2 的交
IntSet IntSet::union2(IntSet s1,IntSet s2){
IntSet ss;
set::iterator ita,itb;
ita=s1.begin();
itb=s2.begin();
while(ita =s1.end()&&itb =s2.end()){
while(*ita>*itb&&ita =s1.end()&&itb =s2.end())
itb++;
if(*ita==*itb&&ita =s1.end()&&itb =s2.end()){
ss.insert(*ita);
ita++; //此处出错!
itb++; //此处出错!到达end时没有跳出循环
}
while(*ita
#include "intset.h"
#include
#include
using namespace std;
typedef std::set set_int;
void IntSet::insert(int n){
set_int::insert(n);
}
bool IntSet::IsEqual(IntSet s1){
set::iterator ita,itb;
ita= set_int::begin();
itb=s1.begin();
if( set_int::size()!=s1.size())
return false;
for(;ita!=set_int::end()&&itb!=s1.end();ita++,itb++){
if((*ita)!=(*itb))
return false;
}
return true;
}
//求s1 与s2 的并
IntSet IntSet::incorporate2(IntSet s1,IntSet s2){
IntSet ss;
set::iterator it;
for(it=s1.begin();it!=s1.end();it++)
ss.insert(*it);
for(it=s2.begin();it!=s2.end();it++)
ss.insert(*it);
return ss;
}
//求s1 与s2 的交
IntSet IntSet::union2(IntSet s1,IntSet s2){
IntSet ss;
set::iterator ita,itb;
ita=s1.begin();
itb=s2.begin();
while(ita =s1.end()&&itb =s2.end()){
while(*ita>*itb&&ita =s1.end()&&itb =s2.end())
itb++;
if(*ita==*itb&&ita =s1.end()&&itb =s2.end()){
ss.insert(*ita);
ita++; //此处出错!
itb++; //此处出错!到达end时没有跳出循环
}
while(*ita
▼优质解答
答案和解析
while(*ita>*itb&&ita !=s1.end()&&itb !=s2.end())
itb++;
if(*ita==*itb&&ita !=s1.end()&&itb !=s2.end()){
ss.insert(*ita);
ita++; //此处出错!
itb++; //此处出错!到达end时没有跳出循环
}
while(*ita*itb&&ita !=s1.end()&&itb !=s2.end())
itb++;
else if(*ita==*itb&& ita !=s1.end()&& itb !=s2.end()){
ss.insert(*ita);
ita++; //此处出错!
itb++; //此处出错!到达end时没有跳出循环
}
else if (*ita
itb++;
if(*ita==*itb&&ita !=s1.end()&&itb !=s2.end()){
ss.insert(*ita);
ita++; //此处出错!
itb++; //此处出错!到达end时没有跳出循环
}
while(*ita*itb&&ita !=s1.end()&&itb !=s2.end())
itb++;
else if(*ita==*itb&& ita !=s1.end()&& itb !=s2.end()){
ss.insert(*ita);
ita++; //此处出错!
itb++; //此处出错!到达end时没有跳出循环
}
else if (*ita
看了iteratornotdere...的网友还看了以下:
麻烦大家帮忙看看这个C++程序#include#include#include#include"re 2020-03-29 …
杭电1753--大明A+B#include#includeintmain(){\x05inta[4 2020-05-14 …
基于图论的奖金分配问题#include#include#include#include#inclu 2020-06-16 …
C++单词调换#include#include#include#include#include#i 2020-06-22 …
英语翻译#include#include#include#include#include#incl 2020-07-17 …
不会改错了……#includevoidmain(){charstr[80];scanf("%s", 2020-07-23 …
VC中的cannotexecuteprogram是什么意思我的运行程序是这个#include<io 2020-07-23 …
#include#include#include#include#include#include# 2020-07-30 …
iteratornotdereferencable.#include"intset.h"#inclu 2020-10-30 …
C语言问题求解#include#includevoidsf(char*s1,char*s2){if( 2020-11-07 …