Сообщение Re: Вопросы про novtable. default constructor. от 28.10.2019 8:37
Изменено 28.10.2019 8:37 DDDX
Re: Вопросы про novtable. default constructor.
Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>Если __declspec(novtable) реально уменьшает размер бинарников, то почему оптимизатор не юзает эту штуку по своему уразумению?
Интересно, а почему компилятор (VC) не позволяет запретить default-конструктор в классе с novtable и без каких-либо данных?
При компиляции конструктора производного класса вылазит ошибка.
Ответ я собственно знаю — потому что компилятор туповат.
Но есть сомнения — может это я хочу странного?
КД>Если __declspec(novtable) реально уменьшает размер бинарников, то почему оптимизатор не юзает эту штуку по своему уразумению?
Интересно, а почему компилятор (VC) не позволяет запретить default-конструктор в классе с novtable и без каких-либо данных?
class __declspec(novtable) t_myclass
{
public:
t_myclass()=delete;
virtual void method()=0;
};
При компиляции конструктора производного класса вылазит ошибка.
Ответ я собственно знаю — потому что компилятор туповат.
Но есть сомнения — может это я хочу странного?
Re: Вопросы про novtable. default constructor.
Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>Если __declspec(novtable) реально уменьшает размер бинарников, то почему оптимизатор не юзает эту штуку по своему уразумению?
Интересно, а почему компилятор (VC) не позволяет запретить default-конструктор в классе с novtable и без каких-либо данных?
При компиляции конструктора производного класса вылазит ошибка.
Ответ я, собственно, знаю — потому что компилятор туповат.
Но есть сомнения — может это я хочу странного?
КД>Если __declspec(novtable) реально уменьшает размер бинарников, то почему оптимизатор не юзает эту штуку по своему уразумению?
Интересно, а почему компилятор (VC) не позволяет запретить default-конструктор в классе с novtable и без каких-либо данных?
class __declspec(novtable) t_myclass
{
public:
t_myclass()=delete;
virtual void method()=0;
};
При компиляции конструктора производного класса вылазит ошибка.
Ответ я, собственно, знаю — потому что компилятор туповат.
Но есть сомнения — может это я хочу странного?