Details
-
Type:
Story
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: afw
-
Labels:
-
Story Points:6
-
Epic Link:
-
Sprint:AP S18-1, AP S18-2
-
Team:Alert Production
Description
RFC-209 requires that all classes make use of explicit copy-constructors and assignment operators, as enabled by C++11. We have a large body of legacy code, particularly in afw, that does not follow this guideline.
All afw classes should be given explicit (often default) default constructors, copy-constructors, and assignment operators, and equivalent C++98 tricks like private undefined constructors should be removed. Per Effective Modern C++, private undefined constructors shall be replaced with public deleted constructors.
For consistency's sake, the default statement shall be included in the header file if most existing constructors are inline and in the implementation file otherwise. delete shall always be given in the header, since the unavailability of a method is part of the API.
Hi Jim Bosch, would you be willing to review this ticket? The actual code changes are quite repetitive, so just an overview is fine.