From 56a10b43b49f86c04a048c83fb0ceb662c998a50 Mon Sep 17 00:00:00 2001 From: DarioS Date: Mon, 27 Mar 2023 20:39:06 +0200 Subject: [PATCH] Include : - miglioramento e irrobustimento a PtrOwner. --- EgtPointerOwner.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/EgtPointerOwner.h b/EgtPointerOwner.h index fd5256f..10a7178 100644 --- a/EgtPointerOwner.h +++ b/EgtPointerOwner.h @@ -7,7 +7,7 @@ // // // Modifiche : 25.11.13 DS Creazione modulo. -// 27.03.23 DS Aggiunta Set( PtrOwner& RPT). +// 27.03.23 DS Aggiunta Set( PtrOwner& RPT). // //---------------------------------------------------------------------------- @@ -25,11 +25,11 @@ class PtrOwner PtrOwner( const PtrOwner& RPT) = delete ; ~PtrOwner( void) { Reset() ; } bool Set( T* pT) { Reset() ; m_pT = pT ; return ( m_pT != nullptr) ; } - bool Set( PtrOwner& RPT) - { if ( this == &RPT) - return true ; - return Set( Release( RPT)) ; - } + template bool Set( PtrOwner& RPT) + { if ( (void*) this == (void*) &RPT) + return true ; + return Set( Release( RPT)) ; + } void Reset( void) { if ( m_pT != nullptr) delete m_pT ; m_pT = nullptr ; } T& operator*() const { return *m_pT ; } T* operator->() const { return m_pT ; }