Age | Commit message (Collapse) | Author | Files | Lines |
|
without them, gcc would compare them by converting them to bool first, which is not exactly what
one would expect. Frankly, I'm surprised it even worked without this.
|
|
it is too easy too shoot yourself in the foot with it, other smart pointers also don't allow such
assignments. If you do want to assign to a RefCount pointer, use reset().
ps: assignment between two RefCounts remains possible, of course.
|
|
|
|
to make it's interface more compatible with other smart pointers.
|
|
and remove a an "almost" copy constructor (almost, because it takes a non-const reference
parameter) which was useless.
|
|
the previous version of operator*() made no sense. E.g., it violated the invariant
(*ptr).foo <=> ptr->foo. The dereferencing operator now returns a reference to the pointed-to
object, rather than a pointer to it.
I also added a bool conversion operator, which can be used in testing the NULL-ness of the
pointer. Anyone wondering if that could be done in a simpler way is encouraged to read
<http://www.artima.com/cppsource/safebool.html>.
And, finally, I removed the mutable flag from the m_data member, since it does not need it.
|
|
|
|
|
|
adjust slit menus to deconstruct properly
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|