Hi,

In looking at C++ SDO portabilty, we found the the Tuscany C++ SDO class
RefCountingPointer has functions used externally by SCA:

        operator T*() {return pointee;}
        friend std::ostream& operator<< (std::ostream &os, const
RefCountingPointer<T>& ptr)

It looks like the conversion to T* function may have been put in
originally as a porting alternative to a member function template, but
may not be needed any more since the member template is now included
outside the #ifdef. 

Exposing the dumb pointer is undesirable since it raises object lifetime
issues and allows other unwanted operations. Having a conversion to bool
is convenient however, and can be implemented safely using a member
function pointer trick (see:
http://www.artima.com/cppsource/safebool.html).

The shift operator also seems undesireable since it places a burden on
all classes which use smart pointers to implement toString
functionality.

How does it sound to raise a Jira to have these member functions
removed?

Thanks,
Michael Yoder
Rogue Wave Software - [EMAIL PROTECTED] Software Developer - HydraSDO

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to