|
Boost : |
From: Andreas Huber (ah2003_at_[hidden])
Date: 2003-06-04 01:54:10
Bohdan wrote:
[snip]
>> I therefore think that it is not necessary to change the current
>> interface for information hiding purposes. Granted, it's not
>> perfect, but the alternative I've outlined in my previous post isn't
>> either, as Reece has pointed out. I might support both interfaces if
>> there are other use cases that don't work with the current interface.
>>
>> Regards,
>>
>> Andreas
>
> I vote for both interfaces. If feature is easy to implement and
> if it allows to avoid even forward state declaration than why
> not ? I think you are right and initial state template parameter
> will simpify code, but allowing default "InnerInitial =
> detail::empty_list" as you did it for state template will allow
> complete removing of
> initial state from interface.
> BTW what about run-time selection of initial states ? :
>
> StopWatch::StopWatch()
> {
> if( ... )
> initiate<MyInitialState1>();
> else
> {
> initiate<MyInitialState2>();
> initiate<MyOrthohonalInitialState2>();
> }
> }
That'd be such a use case then ;-). I'll support this in the next release
(in about a week).
Thanks,
Andreas
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk