unary operators are ! + - for most languages such as !true, +5, -4. Operator overloading allows you to make operators have a method of your class. I have a full set of operator overloading examples for each language that runs here and supports it. Since your taking C++ to the point you might understand it, I'll link my version. The comments will get you to all the others.