Slicing bedeutet, dass man einem Objekt einer abgeleiteten Klasse einer Instanz der Oberklasse zuweist. Dabei gehen Informationen der Unterklasse verloren – werden also „weggesliced“.
Beispiel:
class A { int x; }; class B : public A { int y; };
Ein B-Objekt hat also zwei Membervariablen: x und y.
Weist man jetzt
B b; A a = b;
zu, dann hat geht die Information y verloren. a kann also nur noch auf x zugreifen.