Iter + List = Ärger
-
Ich habe ein Programm mit Vectoren und Iteratoren geschrieben. Nun wollte ich es beschleunigen, indem ich listen statt vectoren benuzte. Beim compilieren meiner
start.cpp
Datei bekomme ich drei Errors, die mich sehr verwundern:
Error E2094 c:\Borland\BCC55\Include\algorith.cc 722: 'operator+' not implemented in type 'list<int,allocator<int> >::iterator' for arguments of type 'int' in function __random_shuffle<list<int,allocator<int> >::iterator,int>(list<int,allocator<int> >::iterator,list<int,allocator<int> >::iterator,int *) Error E2093 c:\Borland\BCC55\Include\algorith.cc 723: 'operator-' not implemented in type 'list<int,allocator<int> >::iterator' for arguments of the same type in function __random_shuffle<list<int,allocator<int> >::iterator,int>(list<int,allocator<int> >::iterator,list<int,allocator<int> >::iterator,int *) Error E2285 c:\Borland\BCC55\Include\algorith.cc 723: Could not find a match for 'iter_swap<ForwardIterator1,ForwardIterator2>(list<int,allocator<int> >::iterator,undefined)' in function __random_shuffle<list<int,allocator<int> >::iterator,int>(list<int,allocator<int> >::iterator,list<int,allocator<int> >::iterator,int *)
Ich habe leider keine Ahnung, was ich hier falsch gemacht haben soll. Vorallem, weil der Error in der Include Datei "algorith.cc" sein soll.
Any ideas?
Thanx, Joe;
-
ja ja - eine liste hat keine random access iteratoren. Deshalb ist es ja auch eine liste - schoen brav durch iterieren, aber nicht springen.