Hi Gerrit,
OSGPointerMField.h has this
#ifndef OSG_CLEAN_FCFIELDS
[...]
iterator find_nc (const_value value);
#endif
[...]
#ifndef OSG_CLEAN_FCFIELDS
iterator find(const_value value);
#endif
const_iterator find(const_value value) const;
and AFAIKS OSG_CLEAN_FCFIELDS is defined normally. Unfortunately a find
that only can return const_iterator makes it impossible [1] to feed the
find result as input to other operations, like erase, insert, etc that
expect a non-const itertator.
So, which one should be moved out of the #ifdef find or find_nc ? Or is
there a different idea behind that define and its uses ?
Oh, wait a minute. I just see you disabled writing to the fields through
the iterator by making operator* return the pointer by value ? Does the
compiler at least warn for *iter = myNewPtr; assignments ?
Thanks,
Carsten
[1] ok, it *is* possible, by obtaining a non-const begin() and then
advance it by std::distance(begin(), iter), but ... ;)
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Opensg-core mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-core