File diff r4548:6a33e364fba5 → r4549:76b9213799ac
yapf/autocopyptr.hpp
Show inline comments
 
@@ -4,16 +4,16 @@
 
#define  AUTOCOPYPTR_HPP
 

	
 
/** CAutoCopyPtrT - kind of CoW (Copy on Write) pointer.
 
		It is non-invasive smart pointer (reference counter is held outside
 
		of Tdata).
 
		When copied, its new copy shares the same underlaying structure Tdata.
 
		When dereferenced, its behavior depends on 2 factors:
 
		   - whether the data is shared (used by more than one pointer)
 
		   - type of access (read/write)
 
		  When shared pointer is dereferenced for write, new clone of Tdata
 
		is made first.
 
		Can't be used for polymorphic data types (interfaces).
 
*/
 
 *  It is non-invasive smart pointer (reference counter is held outside
 
 *  of Tdata).
 
 *  When copied, its new copy shares the same underlaying structure Tdata.
 
 *  When dereferenced, its behavior depends on 2 factors:
 
 *     - whether the data is shared (used by more than one pointer)
 
 *     - type of access (read/write)
 
 *    When shared pointer is dereferenced for write, new clone of Tdata
 
 *  is made first.
 
 *  Can't be used for polymorphic data types (interfaces).
 
 */
 
template <class Tdata_>
 
class CAutoCopyPtrT {
 
protected: