Esimerkin rajoit.cpp toinen +- operaattori voitaisiin välttää tekemällä muunnosoperaattori, joka muuttaa cRajoitettu - tyyppisen olion kokonaisluvuksi:
class cRajoitettu { ... operator int() { return arvo; } };
Tällöin yhteenlaskussa
i = 20 + m2;
m2 ensin muuttuu kokonaisluvuksi ja sitten normaali kokonaislukujen yhteenlasku huolehtii lopusta. Muoto
m1 = 20 + m2;
saataisiin toimimaan määrittelemällä sijoitusoperaattori:
class cRajoitettu { ... cRajoitettu &operator=(int i) { aseta(i); return *this; } };
Tällöin sijoituslauseen oikea puoli lasketaan kokonaislukuna ja sitten tämä kokonaisluku sijoitetaan em. sijoitusoperaattorilla. Sijoitusoperaattorin tulee palauttaa sijoituksen kohteena olevan luokan tyyppinen tulos, jotta ketjusijoitus
m1 = m2 = 20;
cAika a1(10,30),a2(15,55); a1 += 50; a2 = a1 + 20;