Nạp chồng toán tử ++ và -- trong C++

Các toán tử tăng (++) và toán tử giảm (--) là hai toán tử một ngôi quan trọng có sẵn trong C++.

Ví dụ sau minh họa cách nạp chồng toán tử tăng (++) với sự sử dụng của tiền tố cũng như hậu tố. Tương tự, bạn cũng có thể nạp chồng toán tử giảm (--) trong C++:

#include <iostream>
using namespace std;
 
class ThoiGian
{
   private:
      int gio;             // tu 0 toi 23
      int phut;           // tu 0 toi 59
   public:
      // phan khai bao cac constructor can thiet
      ThoiGian(){
         gio = 0;
         phut = 0;
      }
      ThoiGian(int h, int m){
         gio = h;
         phut = m;
      }
      // phuong thuc de hien thi thoi gian
      void hienthiTG()
      {
         cout << "Gio: " << gio << " Phut: " << phut << endl;
         cout << "-----------------------" << endl;
      }
      // nap chong toan tu ++ (tien to)
      ThoiGian operator++ ()  
      {
         ++phut;          // tang doi tuong nay
         if(phut >= 60)  
         {
            ++gio;
            phut -= 60;
         }
         return ThoiGian(gio, phut);
      }
      // nap chong toan tu ++ (hau to)
      ThoiGian operator++( int )         
      {
         // luu giu gia tri ban dau
         ThoiGian T(gio, phut);
         // tang doi tuong nay
         ++phut;                    
         if(phut >= 60)
         {
            ++gio;
            phut -= 60;
         }
         // tra ve gia tri
         return T; 
      }
};
int main()
{
   ThoiGian T1(6, 59), T2(19,24);
 
   ++T1;                    // tang T1
   T1.hienthiTG();        // hien thi T1
   ++T1;                    // tang T1 mot lan lua
   T1.hienthiTG();        // hien thi T1
 
   T2++;                    // tang T2
   T2.hienthiTG();        // hien thi T2
   T2++;                    // tang T2 mot lan lua
   T2.hienthiTG();        // hien thi T2
   return 0;
}

Biên dịch và chạy chương trình C++ trên sẽ cho kết quả sau:

Nạp chồng toán tử ++ và -- trong C++

Theo Tutorialspoint

Bài trước: Nạp chồng toán tử Input/Output trong C++

Bài tiếp: Nạp chồng toán tử gán trong C++

Thứ Tư, 08/08/2018 15:01
11 👨 1.255
Xác thực tài khoản!

Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:

Số điện thoại chưa đúng định dạng!
Số điện thoại này đã được xác thực!
Bạn có thể dùng Sđt này đăng nhập tại đây!
Lỗi gửi SMS, liên hệ Admin
0 Bình luận
Sắp xếp theo
❖
    ❖ Lập trình C++
    Chia sẻ
    Chia sẻ FacebookChia sẻ Twitter
    Đóng