virtual-functions

Играя с реализацией виртуального оператора присваивания, я закончил забавным поведением. Это не ошибка компилятора, так как g++ 4.1, 4.3 и VS 2005 имеют одинаковое поведение. В принципе, виртуальный оператор= ведет себя иначе, чем любая другая виртуальная функция по отношению к фактически выполняемому коду. ...

Я реализую класс, который выполняет стирание типов для небольших объектов и столкнулся с ошибкой сегментации, которую я не понимаю. Следующая программа: #include <iostream> #include <type_traits> struct small_object { public: template<class T> small_object(const T& value) ...

В частности, не должен ли быть какой-то указатель функции на месте в любом случае? ...

в чем разница между абстрактной функцией и виртуальной функцией? В каких случаях рекомендуется использовать виртуальный или абстрактный? Какой подход более правильный? ...

Я получаю предупреждение от ReSharper о вызове виртуального члена из моего конструктора объектов. Почему бы этого не сделать?...

Я получил этот вопрос, когда получил комментарий к обзору кода, в котором говорится, что виртуальные функции не должны быть встроенными. Я думал, что встроенные виртуальные функции могут пригодиться в сценариях, где функции вызываются непосредственно на объекты. Но контраргумент пришел мне на ум-зачем нужно...

можно писать виртуальный методы в Java, как это можно было бы сделать в C++? или, есть ли правильный подход Java, который вы можете реализовать, что производит подобное поведение? Могу я привести несколько примеров?...

в моем дизайне класса я широко использую абстрактные классы и виртуальные функции. У меня было ощущение, что виртуальные функции влияют на производительность. Это правда? Но я думаю, что эта разница в производительности не заметна и выглядит так, как будто я делаю преждевременную оптимизацию. Верно?...

наличие хотя бы одного виртуального метода в классе C++ (или любом из его родительских классов) означает, что класс будет иметь виртуальную таблицу, и каждый экземпляр будет иметь виртуальный указатель. таким образом, стоимость памяти вполне понятен. Наиболее важным является стоимость памяти для экземпляров...

возможно ли для унаследованного класса реализовать виртуальную функцию с другим типом возврата (не используя шаблон в качестве возврата)?...