#include <iostream.h>
#include <list>
#include <algorithm>
#include <string>using namespace std;double extreme( list<double>& array )
{
double min, max;
if(array.empty())
cout << "容器为空,请存入数据。" << endl;
else
{
sort(array.begin(), array.end()); min=*array.begin();
max=*array.end();
cout << "需要容器的最小值请按1,需要容器的最大值请按2" << endl; int m;
cin >> m; if(m=1)
return min;
else
return max;
}
}void main()
{
list<double> a;
a.push_back(1.1);
a.push_back(1.3);
a.push_back(3.4);
a.push_back(4.6);
a.push_back(5.2);
a.push_back(6.0);
a.push_back(6.9);
extreme(a);
list<double> b;
extreme(b);}
#include <list>
#include <algorithm>
#include <string>using namespace std;double extreme( list<double>& array )
{
double min, max;
if(array.empty())
cout << "容器为空,请存入数据。" << endl;
else
{
sort(array.begin(), array.end()); min=*array.begin();
max=*array.end();
cout << "需要容器的最小值请按1,需要容器的最大值请按2" << endl; int m;
cin >> m; if(m=1)
return min;
else
return max;
}
}void main()
{
list<double> a;
a.push_back(1.1);
a.push_back(1.3);
a.push_back(3.4);
a.push_back(4.6);
a.push_back(5.2);
a.push_back(6.0);
a.push_back(6.9);
extreme(a);
list<double> b;
extreme(b);}
list<double>::const_iterator end;
end = array.end();
end--;
max=*(end) ;
int *end;
if(array.empty())
cout << "容器为空,请存入数据。" << endl;
else
{
sort(array.begin(), array.end()); min=*array.begin(); end = array.end();
end--;
max=*(end); cout << "需要容器的最小值请按1,需要容器的最大值请按2" << endl;
error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class std::list<double,class std::allocator<double> >::iterator' (or there is no acceptable conversion)
请问这个错误如何解决啊
#include <iostream>
#include <list>
#include <algorithm>
#include <string>using namespace std;double extreme( list<double>& array )
{
double min, max;
list<double>::const_iterator end; if(array.empty())
cout << "容器为空,请存入数据。" << endl;
else
{
sort(array.begin(), array.end()); min=*array.begin(); end = array.end();
end--;
max=*(end); cout << "需要容器的最小值请按1,需要容器的最大值请按2" << endl; int m;
cin >> m; if(m=1)
return min;
else
return max;
}
}void main()
{
list<double> a;
a.push_back(1.1);
a.push_back(1.3);
a.push_back(3.4);
a.push_back(4.6);
a.push_back(5.2);
a.push_back(6.0);
a.push_back(6.9);
extreme(a);
list<double> b;
extreme(b);}
end = array.end();错误指在这排,好像不能直接这样赋值