回 帖 发 新 帖 刷新版面

主题:[讨论]请帮忙

#include<iostream> 
#include<list> 
#include"d_random.h" 
using namespace std; 
template <typename T> 
void addList(const list<T>& list1,const list<T>& list2,list<T>& list3)
{
    list<T>::iterator iter1; 
           iter1=list1.begin();
           for(int a=0;a<list1.size();a++) 
    {   
        list3.push_back(*iter1);
        iter1++; 
    } 
    list<T>::iterator iter2; 
    iter2=list2.begin();
           for(int b=0;b<list2.size();b++) 
    {   
        list3.push_back(*iter2);
        iter2++; 
    } 
}
int main() 
{
    randomNumber rnd;
    list<int> listL,listM,listN; 
           int i,j;
    cout<<"size of listL(between 1 and 5):"; 
           cin>>i;
    for(int a=0;a<i;a++)
    {
        listL.push_back(rnd.random(99)+0); 
           }  
           cout<<"\nsize of listM(between 1 and 10):"; 
           cin>>j; 
           for(int b=0;b<j;b++)
    {
        listM.push_back(rnd.random(199)+100); 
           }
    addList(listL,listM,listN);
    list<int>::iterator listIter; 
    for(listIter=listN.begin();listIter!=listN.end();listIter++) 
        { 
            cout<<"the new listN is:"<<*listIter<<" "; 
        } 
       
}  
 
 

回复列表 (共1个回复)

沙发

--------------------Configuration: 32 - Win32 Debug--------------------
Compiling...
32.cpp
D:\c++\programes\32.cpp(9) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class std::list<int,class std::allocator<int> >::const_iterator' (or there is no acceptable conversion)
        D:\c++\programes\32.cpp(40) : see reference to function template instantiation 'void __cdecl addList(const class std::list<int,class std::allocator<int> > &,const class std::list<int,class std::allocator<int> > &,class std::list<int,class st
d::allocator<int> > &)' being compiled
D:\c++\programes\32.cpp(16) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class std::list<int,class std::allocator<int> >::const_iterator' (or there is no acceptable conversion)
        D:\c++\programes\32.cpp(40) : see reference to function template instantiation 'void __cdecl addList(const class std::list<int,class std::allocator<int> > &,const class std::list<int,class std::allocator<int> > &,class std::list<int,class st
d::allocator<int> > &)' being compiled
执行 cl.exe 时出错.

32.obj - 1 error(s), 0 warning(s)



不明错误,请求帮助

我来回复

您尚未登录,请登录后再回复。点此登录或注册