/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
Reverse iterators
Fra : Morten Boysen


Dato : 04-02-01 23:21

Nåe jeg kompilerer følgende kode, så får jeg en fejlmeddelse fra g++:

test.cpp: In function `int main ()':
test.cpp:25: no match for `reverse_iterator<const int *> & !=
reverse_iterator<int *>'

Jeg kan ikke forstå, hvorfor den brokker sig over at det er en
const_reverse_iterator. Det fungere jo fint når man bruge nomale forward
iteratorer. Det skal siges, at problemet forsvinder, hvis jeg bruger
en ikke-const reverse iterator. Er det mig der har misforstået noget,
eller er det g++ (2.96) som har en bug? Umiddelbart burde man vel kunne
erstatte c.begin() med c.rbegin, og så ellers bare ændre alt til
reverse iterators, eller tager jeg fejl?


#include <iostream>
#include <iterator>
#include <vector>

using std::cout;
using std::vector;

int main()
{
vector<int> vec;

for (int i = 0; i != 10; ++i)
vec.push_back(i);

cout << "Forward iterators:" << endl;
for (vector<int>::const_iterator i = vec.begin();
i != vec.end(); ++i)
cout << *i << ' ';

cout << endl << endl << "Reverse iterators:" << endl;

for (vector<int>::const_reverse_iterator j = vec.rbegin();
j != vec.rend(); ++j)
cout << *j << ' ';

cout << endl;
return 0;
}


--
Morten Boysen

 
 
Igor V. Rafienko (04-02-2001)
Kommentar
Fra : Igor V. Rafienko


Dato : 04-02-01 23:50

* Morten Boysen

> Nåe jeg kompilerer følgende kode, så får jeg en fejlmeddelse fra g++:
>
> test.cpp: In function `int main ()':
> test.cpp:25: no match for `reverse_iterator<const int *> & !=
> reverse_iterator<int *>'


<URL:http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/lwg-active.html#179>

Kikk også på tråden "LWG Issue 179" i <news:comp.std.c++>.

[snip]





ivr, <news:ifi.test.boa> er en God Ting[tm].
--
Besides, meat tends to run away when possible, or fights. Either
response presents behavioral challenges too complex for any existing
robot.
      -- Stuart Wilkinson, inventor of the "gastrobot"

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste