Skip to content

Commit 4c380a2

Browse files
committed
basicio: delete base class member funcs
Instead of deleting all the subclasses, delete the base. Signed-off-by: Rosen Penev <[email protected]>
1 parent 2bcbf91 commit 4c380a2

File tree

1 file changed

+3
-24
lines changed

1 file changed

+3
-24
lines changed

include/exiv2/basicio.hpp

Lines changed: 3 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,11 @@ class EXIV2API BasicIo {
3636

3737
//! @name Creators
3838
//@{
39+
BasicIo() = default;
3940
//! Destructor
4041
virtual ~BasicIo();
42+
BasicIo(const BasicIo&) = delete;
43+
BasicIo& operator=(const BasicIo&) = delete;
4144
//@}
4245

4346
//! @name Manipulators
@@ -262,12 +265,6 @@ class EXIV2API IoCloser {
262265
// DATA
263266
//! The BasicIo reference
264267
BasicIo& bio_;
265-
266-
// Not implemented
267-
//! Copy constructor
268-
IoCloser(const IoCloser&) = delete;
269-
//! Assignment operator
270-
IoCloser& operator=(const IoCloser&) = delete;
271268
}; // class IoCloser
272269

273270
#ifdef EXV_ENABLE_FILESYSTEM
@@ -468,12 +465,6 @@ class EXIV2API FileIo : public BasicIo {
468465
void populateFakeData() override;
469466
//@}
470467

471-
// NOT IMPLEMENTED
472-
//! Copy constructor
473-
FileIo(const FileIo&) = delete;
474-
//! Assignment operator
475-
FileIo& operator=(const FileIo&) = delete;
476-
477468
private:
478469
// Pimpl idiom
479470
class Impl;
@@ -651,12 +642,6 @@ class EXIV2API MemIo : public BasicIo {
651642

652643
//@}
653644

654-
// NOT IMPLEMENTED
655-
//! Copy constructor
656-
MemIo(const MemIo&) = delete;
657-
//! Assignment operator
658-
MemIo& operator=(const MemIo&) = delete;
659-
660645
private:
661646
// Pimpl idiom
662647
class Impl;
@@ -690,9 +675,6 @@ class EXIV2API XPathIo : public FileIo {
690675
~XPathIo() override;
691676
//@}
692677

693-
XPathIo(const XPathIo&) = delete;
694-
XPathIo& operator=(const XPathIo&) = delete;
695-
696678
//! @name Manipulators
697679
//@{
698680
/*!
@@ -733,9 +715,6 @@ class EXIV2API RemoteIo : public BasicIo {
733715
~RemoteIo() override;
734716
//@}
735717

736-
RemoteIo(const RemoteIo&) = delete;
737-
RemoteIo& operator=(const RemoteIo&) = delete;
738-
739718
//! @name Manipulators
740719
//@{
741720
/*!

0 commit comments

Comments
 (0)