6.35.3 Атрибуты типа ARM
На тех целевых платформах ARM, которые поддерживают dllimport (таких как Symbian OS), вы можете использовать атрибут notshared, чтобы указать, что виртуальная таблица и другие подобные данные для класса не должны экспортироваться из DLL. Например:
class __declspec(notshared) C {
public:
__declspec(dllimport) C();
virtual void f();
}
__declspec(dllexport)
C::C() {}
В этом коде C::C экспортируется из текущей DLL, но виртуальная таблица для C не экспортируется. (Можно использовать __attribute__ вместо __declspec, если вам так удобнее, но большинство кодов Symbian OS используют __declspec.)
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-13.3.0/gcc/ARM-Type-Attributes.html