So löschen Sie ein Objekt eines polymorphen Klassentyps ohne virtuellen Destruktor
Ich erhalte die folgende Fehlermeldung, wenn ich versuche, Code aus einem SDK eines Drittanbieters zu kompilieren.
*Description Resource Path Location Type
deleting object of polymorphic class type ‘Vendor_sys::VendorCode’ which has non-virtual destructor might cause undefined behaviour [-Werror=delete-non-virtual-dtor] PnServer.cpp /PCounter line 467 C/C++ Problem*
Ich weiß nicht, ob es möglich ist, diese Bedingung mit nur teilweiser Kenntnis des SDK des Anbieters zu erfüllen, bei dem das meiste Heben in einer DLL oder einem Bibliotheksobjekt ausgeführt wird.
Meine Build-Umgebung ist Eclipse Juno mit gpp.
Ich habe in Google nach der Fehlermeldung gesucht und keine Instanzen dieses Fehlers gefunden.
Welche Optionen stehen mir zur Verfügung, wenn ich den Blackbox-Teil des Herstellercodes nicht ändern kann?
Hier ist der Code, der während des Erstellungsprozesses fehlschlägt:
delete pData->unit;