Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Default constructor should not throw. Declare it '
noexcept
' (f.6)
The C++ Core Guidelines suggest that default constructors shouldn't do anything that can throw. When the default constructor can throw, all code that relies on a properly instantiated object may also throw.
Remarks
Consider the default constructors of the STL types, like std::vector
. In these implementations, the default constructors initialize internal state without making allocations. In the std::vector
case, the size is set to 0 and the internal pointer is set to nullptr
. The same pattern should be followed for all default constructors.
Code analysis name: DEFAULT_CTOR_NOEXCEPT