Abdelrazak Younes wrote:
> Georg Baum wrote:
>> a) The nonconst Buffer::errorList can be shortened a lot,
>
> I was not sure that the missing entry would be automatically inserted so
> I went for the safest road. If this is standard compliant I guess MSVC
> will be OK with that.
This is standard behaviour of std::map. The non-const operator[] inserts the
element if it is not there. If you have been bitten by it once you won't
forget...
>> b) the for_each construct works with boost::bind, we use this at other
>> places. mem_fun_ref calls a member function of the container element, but
>> what we need is a member function of the LyX class.
>
> Interesting, I shall read the boost bind doc sometimes. FYI, the
> standard doc says to use mem_fun_ref, if somebody knows what's wrong
> with the formerly commented code, I'd be interested to know.
Example:
class Foo {
void Fun(Foo const &);
};
class Bar {
void DoSomething();
void Fun(Foo const &);
};
Bar::DoSomething()
{
std::vector<Foo> x;
for_each(x.begin(), x.end(), std::mem_fun_ref(&Foo::Fun));
for_each(x.begin(), x.end(), boost::bind(&Bar::Fun, this, _1));
}
The case we have here is the second. Clear now?
Georg