If a instance of WiFiManagerParameter is created by new and deleted by delete, a compiler warning is issued.
src/settings/SettingsController.cpp:78:67: warning: deleting object of polymorphic class type 'WiFiManagerParameter' which has non-virtual destructor might cause undefined behavior [-Wdelete-non-virtual-dtor]
78 | for (WiFiManagerParameter* p : this->wifi_settings->parameters) delete p;
The destructor should be virtual, because the class can be extended.
If a instance of WiFiManagerParameter is created by
new
and deleted bydelete
, a compiler warning is issued.The destructor should be virtual, because the class can be extended.