Včasih imamo hierarhijo razredov, v kateri imamo nadrazred, za katerega vemo, da ne bomo uporabljali objektov tega razreda. Tak razred hočemo imeti v hierarhiji samo zaradi definicije polimorfnega obnašanja nekaterih funkcij. Take razrede imenujemo abstraktni razredi. Primeri takih abstraktnih razredov so lahko na primer oblika, telo, lik, ...
Razred napravimo abstrakten tako, da definiramo vsaj eno izmed njegovih metod kot čisto virtualno (pure virtual function). Funkcija je čisto virtualna, kadar za definicijo vsebuje še
inicializacijo = 0.