- added RefCountedBase without virtual destructor

This commit is contained in:
alexey.lysiuk 2021-08-03 09:53:21 +03:00 committed by Christoph Oelckers
parent bbcd522052
commit 76ecf44549
1 changed files with 17 additions and 8 deletions

View File

@ -2,7 +2,16 @@
// Simple lightweight reference counting pointer alternative for std::shared_ptr which stores the reference counter in the handled object itself.
// Base class for handled objects
// Base classes for handled objects
class NoVirtualRefCountedBase
{
public:
void IncRef() { refCount++; }
void DecRef() { if (--refCount <= 0) delete this; }
private:
int refCount = 0;
};
class RefCountedBase
{
public:
@ -14,7 +23,7 @@ protected:
virtual ~RefCountedBase() = default;
};
// The actual pointer object
// The actual pointer object
template<class T>
class RefCountedPtr
{