Overload the one-seat operator in C ++

The unary operator in C ++ operates on a single operand and here are some examples of single-operator operators:

Overloading the increment operator (++) and decreasing operator (-) in C ++.

Operator unary (-) in C ++

Negative logical operator (!) In C ++

The unary operator operates on the object to which they are called, and usually this operator appears to the left of the object, such as :! Obj, -obj, and ++ obj , but sometimes they can be used as is suffix like obj ++ or obj-- .

The following example explains how the (-) operator can be overloaded with the use of the prefix as well as the suffix.

 #include using namespace std ; class KhoangCach { private : int met ; int centimet ; public : // khai bao cac constructor KhoangCach (){ met = 0 ; centimet = 0 ; } KhoangCach ( int m , int c ){ met = m ; centimet = c ; } // phuong thuc de hien thi khoang cach void hienthiKC () { cout << "Khoang cach bang m la: " << met << endl ; cout << "Khoang cach bang cm la: " << centimet << endl ; cout << "nn================================nn" << endl ; } // nap chong toan tu (-) KhoangCach operator - () { met = - met ; centimet = - centimet ; return KhoangCach ( met , centimet ); } }; int main () { KhoangCach K1 ( 20 , 6 ), K2 (- 6 , 15 ); - K1 ; // ap dung su phu dinh K1 . hienthiKC (); // hien thi K1 - K2 ; // ap dung su phu dinh K2 . hienthiKC (); // hien thi K2 return 0 ; } 

Compiling and running the above C ++ program will produce the following results:

Overload the one-seat operator in C ++ Picture 1

Hopefully the above example will help you understand this concept and you can apply for operator operator (!) In C ++.

According to Tutorialspoint

Previous post: Load operator and Load overlap in C ++

Next lesson: Overload binary operator in C ++

4 ★ | 1 Vote

May be interested

  • Overload binary operators in C ++Photo of Overload binary operators in C ++
    binary operators in c ++ take two parameters. you use binary operators quite often, such as addition operator (+), subtraction operator (-) and division operator (/).
  • Overload relational operator in C ++Photo of Overload relational operator in C ++
    there are many different relational operators supported by c ++, such as: (, =, ==, ...) that can be used to compare the data types available in c ++.
  • Load the Input / Output operator stack in C ++Photo of Load the Input / Output operator stack in C ++
    c ++ is able to input and output existing data types by using thread extraction operators >> and thread insertion operators
  • Modifier in C / C ++Photo of Modifier in C / C ++
    c ++ allows data types char, int and double to have modifiers placed before them. a modifier is used to inform the meaning of the base type, making it more accurate with the necessity of diverse situations.
  • Storage class in C / C ++Photo of Storage class in C / C ++
    the storage class defines the scope and life of variables and / or functions within a c / c ++ program. they often precede the type of data they impact.
  • Operator in C ++Photo of Operator in C ++
    an operator is an icon, which tells the compiler to perform specific mathematical and logical operations. c ++ provides many available operators.