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

Nạp chồng toán tử ++ và -- trong C++ là gì? Sử dụng như thế nào? Mời bạn đọc tham khảo bài viết dưới đây của eLib.VN để tìm hiểu rõ hơn về Nạp chồng toán tử ++ và -- nhé!

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

1. 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++.

2. Ví dụ Nạp chồng toán tử ++ và -- 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(18, 30);

    ++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:

Trên đây là bài viết của eLib.VN về Nạp chồng toán tử ++ và -- trong C++. Hy vọng qua bài này bạn sẽ hiểu và vận dụng trong quá trình học tập và làm việc với C++. Chúc các bạn thành công!

Ngày:29/10/2020 Chia sẻ bởi:Phuong

CÓ THỂ BẠN QUAN TÂM