Boost logo

Boost Users :

Subject: Re: [Boost-users] Delegating to boost::function with arbitrary signature
From: Michael Powell (mwpowellhtx_at_[hidden])
Date: 2013-12-14 10:30:48

On Sat, Dec 14, 2013 at 9:25 AM, Bjorn Reese <breese_at_[hidden]> wrote:
> On 12/14/2013 03:49 PM, Alexander Lamaison wrote:
>> I'm trying to create something like a `boost::function`, but with an
>> extra 'smart handle' tucked inside, which controls the lifetime of a
>> resource the functions needs to execute correctly.
> The two aspects (resource life-time and generic signatures) should
> probably be handled separately.
> Regarding resource life-time, a common pattern is to bind to a member
> function on an object obtained via shared_from_this(). Here is an
> example from Boost.Asio:

I tend to agree with this application of the pattern:
dependency-injection and/or inversion-of-control, or in this case,

Trust me, from industry best practice, as well as experience, you'll
be glad you did, because you can keep the concerns a) loosely coupled,
and b) more concise, single-responsibility, closer to the problem they
are actually trying to solve.

> Regarding generic signatures I am less certain, but maybe you could look
> into Boost.TypeErasure. Especially its type-safe printf example (or the
> subsequent example with multiple signatures)
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at