diff --git a/src/datasets.cpp b/src/datasets.cpp index d8cafb46..8cb09fed 100644 --- a/src/datasets.cpp +++ b/src/datasets.cpp @@ -608,6 +608,10 @@ namespace Exiv2 { { } + IptcKey::~IptcKey() + { + } + IptcKey& IptcKey::operator=(const IptcKey& rhs) { if (this == &rhs) return *this; diff --git a/src/datasets.hpp b/src/datasets.hpp index 0730a1cb..7bd9e298 100644 --- a/src/datasets.hpp +++ b/src/datasets.hpp @@ -298,6 +298,8 @@ namespace Exiv2 { IptcKey(uint16_t tag, uint16_t record); //! Copy constructor IptcKey(const IptcKey& rhs); + //! Destructor + virtual ~IptcKey(); //@} //! @name Manipulators diff --git a/src/metadatum.cpp b/src/metadatum.cpp index b0e070de..ed68a855 100644 --- a/src/metadatum.cpp +++ b/src/metadatum.cpp @@ -43,6 +43,10 @@ EXIV2_RCSID("@(#) $Id$") // class member definitions namespace Exiv2 { + Key::~Key() + { + } + Key::AutoPtr Key::clone() const { return AutoPtr(clone_()); diff --git a/src/metadatum.hpp b/src/metadatum.hpp index c55b4a58..6b46c6a3 100644 --- a/src/metadatum.hpp +++ b/src/metadatum.hpp @@ -61,7 +61,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Destructor - virtual ~Key() {} + virtual ~Key(); //@} //! @name Accessors diff --git a/src/value.cpp b/src/value.cpp index 043b4910..c54d667e 100644 --- a/src/value.cpp +++ b/src/value.cpp @@ -55,6 +55,10 @@ namespace Exiv2 { { } + Value::~Value() + { + } + Value& Value::operator=(const Value& rhs) { if (this == &rhs) return *this; @@ -146,6 +150,21 @@ namespace Exiv2 { return toString(); } + DataValue::DataValue(TypeId typeId) : Value(typeId) + { + } + + DataValue::DataValue(const byte* buf, + long len, ByteOrder byteOrder,TypeId typeId) + : Value(typeId) + { + read(buf, len, byteOrder); + } + + DataValue::~DataValue() + { + } + int DataValue::read(const byte* buf, long len, ByteOrder /*byteOrder*/) { // byteOrder not needed diff --git a/src/value.hpp b/src/value.hpp index 8c762273..2c470f1a 100644 --- a/src/value.hpp +++ b/src/value.hpp @@ -69,7 +69,7 @@ namespace Exiv2 { //! Constructor, taking a type id to initialize the base class with explicit Value(TypeId typeId); //! Virtual destructor. - virtual ~Value() {} + virtual ~Value(); //@} //! @name Manipulators //@{ @@ -268,14 +268,13 @@ namespace Exiv2 { //! @name Creators //@{ //! Default constructor. - explicit DataValue(TypeId typeId =undefined) : Value(typeId) {} + explicit DataValue(TypeId typeId =undefined); //! Constructor DataValue(const byte* buf, long len, ByteOrder byteOrder =invalidByteOrder, - TypeId typeId =undefined) - : Value(typeId) { read(buf, len, byteOrder); } + TypeId typeId =undefined); //! Virtual destructor. - virtual ~DataValue() {} + virtual ~DataValue(); //@} //! @name Manipulators