Xu Hướng 8/2022 ❤️ Hàm Bạn (Friend Function) Và Lớp Bạn (Friend Class) Trong C++ ❣️ Top View | Hoisinhvienqnam.edu.vn

Xem 9,999

Bạn đang xem bài viết Hàm Bạn (Friend Function) Và Lớp Bạn (Friend Class) Trong C++ được cập nhật mới nhất ngày 29/08/2022 trên website Hoisinhvienqnam.edu.vn. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Cho đến thời điểm hiện tại, bài viết này đã đạt được 9,999 lượt xem.

Lệnh Điều Kiện Trong C++, Cú Pháp Và Cách Sử Dụng

Cách Viết Phân Số, Hỗn Số Trong Word

Tạo From Tính Trong Word 2010

Cách Tự Tạo Phím Tắt Cho Lệnh Trong Word 2007

6 Thủ Thuật Hay Cho Word 2013

Trong bài học hôm nay chúng ta sẽ tìm hiều về hàm bạn ( Friend function) và lớp bạn ( Friend Class) trong C++. Vậy hàm bạn có gì khác so với hàm thông thường khác trong C++. Lớp bạn có khác gì so với lớp thông thường khác trong C++. Chúng ta sẽ cùng tìm hiểu trong nội dung sau đây.

1. Hàm bạn trong C++

Nếu một hàm được định nghĩa là một hàm bạn ( Friend function) trong C++, thì dữ liệu được bảo vệ ( protected) và riêng tư ( private) của một lớp có thể được truy cập bằng cách sử dụng hàm.

Cú pháp để khai báo hàm bạn ( Friend function) trong C++ như sau:

class TenLop { friend KieuDuLieu TenHam([Tham so]);
};

Ví dụ

Chúng ta cùng xem xét một ví dụ đơn giản về hàm bạn ( Friend function) trong C++ như sau:

using namespace std; class HinhChuNhat { private: int chieuDai; int chieuRong; public: HinhChuNhat(int chieuDai, int chieuRong) { } HinhChuNhat(): chieuDai(0) { } friend int HienThiChieuDai(HinhChuNhat); }; int HienThiChieuDai(HinhChuNhat hcn) { hcn.chieuDai += 10; return hcn.chieuDai; } int main() { HinhChuNhat hcn = HinhChuNhat(10, 20); cout << “Chieu dai cua hinh chu nhat la: ” << HienThiChieuDai(hcn)<<endl; return 0; }

Và kết quả sau khi thực thi chương trình trên như sau:

Chúng ta cùng xem tiếp một ví dụ nữa về hàm bạn giữa 2 lớp trong C++ như sau:

using namespace std; class Lop2; class Lop1 { int a; public: void ThietLapGiaTriA(int a) { } void HienThi() { cout << “Lop 1, a = ” << a << endl; } friend void TimGiaTriNhoNhat(Lop1, Lop2); }; class Lop2 { int b; public: void ThietLapGiaTriB(int b) { } void HienThi() { cout << “Lop 2, b = ” << b << endl; } friend void TimGiaTriNhoNhat(Lop1, Lop2); }; void TimGiaTriNhoNhat(Lop1 l1, Lop2 l2) { cout << “Gia tri nho nhat trong 2 lop la: “; if(l1.a <= l2.b) cout << l1.a << endl; else cout << l2.b << endl; } int main() { Lop1 l1; Lop2 l2; l1.ThietLapGiaTriA(7); l2.ThietLapGiaTriB(9); l1.HienThi(); l2.HienThi(); TimGiaTriNhoNhat(l1, l2); return 0; }

Và kết quả sau khi thực thi chương trình trên như sau:

Ở ví dụ trên hàm TimGiaTriNhoNhat là hàm bạn của cả hai lớp Lop1 và Lop2 vì vậy hàm TimGiaTriNhoNhat có thể truy cập dữ liệu thành viên private của cả hai lớp.

Trong C++ có hổ trợ thêm khái niệm khác nữa đó là lớp bạn (Friend class). Vậy lớp bạn là gì? Chúng ta sẽ cùng tìm hiểu ở phần sau đây.

2. Lớp bạn (Friend class)

Một lớp bạn ( friend class) có thể truy cập cả các thành viên riêng tư và được bảo vệ của lớp mà nó đã được khai báo là friend.

Ví dụ

Chúng ta cùng xem một ví dụ đơn giản về lớp bạn ( friend class) trong C++ như sau:

using namespace std; class Lop1 { int a = 10; friend class Lop2; }; class Lop2 { public: void HienThi(Lop1 &l1) { cout << “Gia tri cua a la: “<< l1.a; } }; int main() { Lop1 l1; Lop2 l2; l2.HienThi(l1); return 0; }

Và kết quả sau khi thực thi chương trình trên như sau:

Trong ví dụ trên, Lop2 được khai báo là friend trong lớp Lop1. Do đó, Lop2 là bạn của Lop1. Lop2 có thể truy cập các thành viên private của Lop1.

3. Kết luận

Như vậy là chúng ta đã tìm hiểu xong về hàm bạn ( friend function) và lớp bạn ( friend class) trong C++ là gì rồi.

Nếu các bạn muốn truy xuất thành viên của lớp ở dạng private hoặc protected từ một hàm hoặc lớp khác thì chúng ta sử dụng hàm bạn hoặc lớp bạn.

Khai Báo Thư Viện Và Hàm Main Trong C++

Cách Viết Hàm Và Cách Gọi Hàm Trong C++ (Function)

Tài Nguyên Tra Cứu Hàm Và Hook Trong WordPress

Những Hàm Cơ Bản Trong WordPress Cần Thiết Nhất

Hướng Dẫn Sử Dụng Các Hàm Esc_Html_E(), Esc_Html__(), Esc_Html() Trong WordPress

Cập nhật thông tin chi tiết về Hàm Bạn (Friend Function) Và Lớp Bạn (Friend Class) Trong C++ trên website Hoisinhvienqnam.edu.vn. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất. Chúc bạn một ngày tốt lành!

Yêu thích

2656

/ Xu hướng

2736

/ Tổng

2816

thumb