First, please excuse that I'm answering *that* late to this mail but I just accidentally tripped over this message and I'm hoping that a late answer is better than none at all.
On Tuesday 12 November 2002 12:32 pm, Wesley W. Terpstra wrote: [Solutions 1 - 4 remove] Solution 5: use a property map based implementation of <algorithm> The problem you identified (need to access references from STL algorithms rather than separated get/set operations) is one of the problem recognized quite a while ago (just look for "proxy containers" like our favorite non-container 'std::vector<bool>'). This problem plus several others is addressed by separating positioning (using iterators) and property access (using property maps). Since the STL algorithms are tightly bound to the abstractions upon which they are built, this separation requires a new implementation of the algorithms library built upon the two new abstraction (well, only property maps are "new" but the iterator abstraction is changed in a subtle way, too). I have a rather complete implementation of all algorithms similar to those in <algorithm> based on property maps implemented. The resulting algorithms can be used identically to the algorithms in the standard library using a default property map which just assumes that the iterators actually provide access to a reference. However, internally 'get()' and 'put()' functions are used to access the properties. A major ommission of my implementation is the documentation... However, property maps are described in "The Boost Graph Library" by Jeremy Siek et al. (Addison-Wesley) and there are tests which can be used to see how the algorithms can be used. The implementation can be downloaded from <http://www.dietmar-kuehl.de/cool/cool-20030106.tar.gz>. -- <mailto:[EMAIL PROTECTED]> <http://www.dietmar-kuehl.de/> Phaidros eaSE - Easy Software Engineering: <http://www.phaidros.com/> _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost