
when I write the following code:
POLE::ole_directory_iterator _it(argv[1]); POLE::ole_directory_iterator _endIt();
Israel Fdez. Cabrera wrote: this declares a function-------------^^ not an iterator. Try dropping the parens.
for (; _it != _endIt; ++_it) { POLE::path _path = *_it; }
I get the following error with MSVC 7.1:
c:\...\pole++.cpp(20): error C2784: 'detail::enable_if_interoperable<Derived1,Derived2,mpl::apply2<boost::detail::always_bool2,Derived1,Derived2>::type>::type boost::operator !=(const boost::iterator_facade<Derived1,V1,TC1,R1,D1> &,const boost::iterator_facade<Derived2,V2,TC2,R2,D2> &)' : could not deduce template argument for 'const boost::iterator_facade<Derived,Value,CategoryOrTraversal,Reference,Difference> &' from 'POLE::ole_directory_iterator'
c:\Boost\include\boost-1_32\boost\iterator\iterator_facade.hpp(837) : see declaration of 'boost::operator`!=''
I'm modifying some one else library, but I get the last version from the author and added the modifications to the new sources, this code works with the last library sources but not with the new one. I check the sources more than once and there are no differences. I'll be glad if some one give me a hint.
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com