|
Boost : |
From: Bruno Lalande (bruno.lalande_at_[hidden])
Date: 2008-05-10 06:13:15
Sorry for multiple mails, there have been a lot of things said since
yesterday evening and I have troubles synthesizing my answers. This is
the last one :-)
On Sat, May 10, 2008 at 12:50 AM, Simonson, Lucanus J
<lucanus.j.simonson_at_[hidden]> wrote:
> I want to allow partial modeling of the concept, for instance, if a data
> type doesn't provide a default constructor, or even allow modification
> of it's data through the traits it should still be allowed to work as a
> read-only geometry type when those services are not needed. It is,
> therefore, improper to check that the data type conforms to the full
> requirements of the concept, when in fact, it is not required for the
> specific concept function being instantated.
If you face this kind of problem, it means in my opinion that your
concept should be separated into several smaller ones. For example ,
if you want some algorithms to only require read access and some
others to only require write access, then you should write a read
concept, a write concept, and a read-write concept.
I'm not very knowledgeable yet about concepts but if I have well
understood, a concept is meant to be checked in its whole. A type
satisfies or doesn't satisfy it. C++ gurus will rectify if I'm wrong
but I think it's the way in which they will apply in C++0x.
Bruno
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk