Обрезание объектов происходит, когда мы назначаем или копируем объект производного класса в объект его базового класса, теряя производную часть его в процессе.
Здесь более подробно объяснено: Что такое проблема нарезания на С++?.
(Сам я не рассматриваю его как проблему, а скорее естественное следствие семантики значения языка, но это не вопрос этого вопроса.)
Что я задаюсь вопросом: существуют ли когда-нибудь ситуации, когда вы будете использовать это намеренно? Ситуация, где это "правильный инструмент для работы"?