From dfd27eaa85398d0cf842dbdd96bb76b5cfe4b5f3 Mon Sep 17 00:00:00 2001 From: Christian Hoffmann Date: Sun, 30 Oct 2022 23:06:36 +0100 Subject: [PATCH] Code: Make copy constructor/assignments explicit C++11 recommends that. When not doing it, newer compiler versions will warn about that. Also see https://en.wikipedia.org/wiki/Rule_of_three_(C%2B%2B_programming) Fixes: #2681 --- src/protocol.h | 8 ++++++++ src/util.h | 1 + 2 files changed, 9 insertions(+) diff --git a/src/protocol.h b/src/protocol.h index 2802f68dea..3fee4fbf1f 100644 --- a/src/protocol.h +++ b/src/protocol.h @@ -176,6 +176,14 @@ class CProtocol : public QObject CSendMessage() : vecMessage ( 0 ), iID ( PROTMESSID_ILLEGAL ), iCnt ( 0 ) {} CSendMessage ( const CVector& nMess, const int iNCnt, const int iNID ) : vecMessage ( nMess ), iID ( iNID ), iCnt ( iNCnt ) {} + CSendMessage ( const CSendMessage& SendMess ) + { + vecMessage.Init ( SendMess.vecMessage.Size() ); + vecMessage = SendMess.vecMessage; + iID = SendMess.iID; + iCnt = SendMess.iCnt; + } + CSendMessage& operator= ( const CSendMessage& NewSendMess ) { vecMessage.Init ( NewSendMess.vecMessage.Size() ); diff --git a/src/util.h b/src/util.h index 4a711e9b0b..e72263e627 100644 --- a/src/util.h +++ b/src/util.h @@ -123,6 +123,7 @@ class CVector : public std::vector CVector ( const int iNeSi, const TData tInVa ) { Init ( iNeSi, tInVa ); } CVector ( CVector const& ) = default; + CVector& operator= ( CVector const& ) = default; void Init ( const int iNewSize );