Подавление генерации таблиц C++ может быть сделано в MSVC с помощью атрибута __declspec(novtable)
. Однако, похоже, что эквивалентного атрибута для компилятора GNU C++ не существует. Дело в том, что оставление vtables для чистых виртуальных классов без необходимости приводит к __cxa_abort()
и многим другим, а я хочу избежать этого, поскольку программирую для встраиваемой системы. Итак, что мне делать?
struct ISomeInterface
{
virtual void Func() = 0;
};
class CSomeClass : public ISomeInterface
{
virtual void Func();
}
void CSomeClass::Func()
{
//...
}