Boost logo

Boost :

From: jorg.schaible_at_[hidden]
Date: 2000-03-13 09:08:28


Hi Beman,

if the new/delete is separated from shared_ptr/scoped_ptr you are also
able to write allocators using an incomplete type support and the opaque
versions are obsolete.

---------------------------------------- Message History
      ----------------------------------------

From: beman_at_[hidden] on 08/03/2000 13:26

[snip]

2) Incomplete type support via implementation in a separate header
of member functions requiring complete types. This can lead to
better designs by keeping implementation details opaque (hidden
behind an incomplete type) and reducing compilation
interdependencies.

The two techniques are somewhat orthogonal. Incomplete type support
is particularly appropriate for deep copy semantics, but it could
also be used in variations of the current boost smart pointers so
they could work with opaque types having non-trivial destructors.

In other words, it would be complete (although not necessarily
desirable) to have:

  deep_opaque_ptr // also known as CopyPtr
  deep_ptr
  shared_opaque_ptr
  shared_ptr // same as current
  scoped_opaque_ptr
  scoped_ptr // same as current

Very interesting...

--Beman

------------------------------------------------------------------------
Get paid for the computing stuff you know!
Get answers for the stuff you don't. And get $10 to spend on the site!
http://click.egroups.com/1/2197/1/_/9351/_/952521763/

-- Create a poll/survey for your group!
-- http://www.egroups.com/vote?listname=boost&m=1


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk