Boost logo

Boost :

From: Dave Abrahams (abrahams_at_[hidden])
Date: 2000-03-06 18:36:42


on 3/6/00 3:15 PM, Kevin Atkinson at kevinatk_at_[hidden] wrote:

> Here is a more complicated but more efficient operator=:
>
> template <typename T>
> CopyPtr<T> & CopyPtr<T>::operator= (const CopyPtr<T> & other)
> {
> if (other.ptr == 0) {
> delete ptr;
> ptr = 0;
> } else if (ptr == 0) {
> if (other.ptr == 0)
> ptr = 0;
        ^^^^^^^^ How will this clause ever execute?
> else
> ptr = new T(*other.ptr);
> } else {
> *ptr = *other.ptr;
> }
> return *this;
> }


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