PC lint warning - COM класс имеет виртуальные функции, но не виртуальный деструктор
Я исправляю некоторые компьютерные корпии плюс предупреждения и ошибки. Кодовая база содержит IDL - файлы для COM-структур. Следовательно, автоматически сгенерированные файлы h имеют виртуальные функции для COM-класса, но не виртуальный деструктор. Ниже приведен фрагмент из автоматически сгенерированного заголовка из IDL-файла.
MIDL_INTERFACE("9BY99957-418C-4A53-9C86-DD9834B55882") ISomeInterface : public IUnknown { public: virtual HRESULT foo() = 0; }
При запуске Pc Lint Plus я получаю это предупреждение
Цитата:предупреждение 3412: "struct ISomeInterface" имеет виртуальные функции, но не виртуальный деструктор
Что я уже пробовал:
Я думаю о том, чтобы подавить эти предупреждения, так как здесь я мало что могу сделать. Но сталкивался ли кто-нибудь с этой проблемой и нашел ли кто-нибудь способ ее преодолеть ?
Michael Haephrati
Проверьте этот ответ https://stackoverflow.com/questions/10024796/c-virtual-functions-but-no-virtual-destructors