Nạp chồng toán tử gọi hàm () trong C++

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

Nạp chồng toán tử gọi hàm () trong C++

1. Nạp chồng toán tử gọi hàm () trong C++

Toán tử gọi hàm () trong C++ có thể được nạp chồng cho các đối tượng của kiểu lớp. Khi bạn nạp chồng (), bạn đang không tạo một cách mới để gọi một hàm. Đúng hơn là, bạn đang tạo một hàm toán tử mà có thể được truyền số tham số tùy ý.

2. Ví dụ Nạp chồng toán tử gọi hàm () trong C++

Ví dụ sau minh họa cách nạp chồng toán tử gọi hàm () trong C++:

#include <iostream>
using namespace std;

class KhoangCach
{
private:
    int met;
    int centimet;
public:
    // phan khai bao cac constructor can thiet
    KhoangCach() {
        met = 0;
        centimet = 0;
    }
    KhoangCach(int m, int c) {
        met = m;
        centimet = c;
    }
    // nap chong toan tu goi ham ()
    KhoangCach operator()(int x, int y, int z)
    {
        KhoangCach K;
        // bay gio, dat phep tinh bat ky
        K.met = x + y + 5;
        K.centimet = y - z + 20;
        return K;
    }
    // Phuong thuc de hien thi khoang cach
    void hienthiKC()
    {
        cout << "\nDo dai bang m la: " << met <<
            "\nVa do dai bang cm la: " << centimet << endl;
    }

};

int main()
{
    KhoangCach K1(25, 40), K2;
    cout << "Khoang cach dau tien la: ";
    K1.hienthiKC();   K2 = K1(15, 15, 15);
    // trieu hoi toan tu ()
    cout << "\n--------------------------\n";
    cout << "Khoang cach thu hai la: ";
    K2.hienthiKC();   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ử gọi hàm () 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:Minh Ngoan

CÓ THỂ BẠN QUAN TÂM