Ngôn ngữ lập trình C++và cấu trúc dữ liệu part 5

Tham khảo tài liệu 'ngôn ngữ lập trình c++và cấu trúc dữ liệu part 5', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | int frifunc alpha a beta b return void mainO alpha aa beta bb cout Ham ban frifunc aa bb frifunc aa bb Điểm mấu chốt ờ đây là khai báo lớp beta là một láp bạn của alpha friend class beta de beta co the truy nhap du lieu alpha Khai báo này cho phép bất cứ hàm thành viên nào của lớp beta cũng truy nhập được tới các dữ liệu private hay protected ưong lớp alpha. Cả hai từ khóa friend và class đều cần thiết. Chú ý rằng khai báo được đặt trong phần private của alpha. Như với các hàm bạn trình biên dịch không quan tâm đến nơi đặt khai báo nhưng để chính xác về khái niệm nên đặt nó trong phần private bởi vì sự kết bạn giữa hai lớp alpha và beta chỉ được sử dụng trong hai lớp đó nó không phải phần giao diện chung public interface - được truy nhập bởi người sử dụng . Điều quan ưọng cần nhận ra là trừ khi chúng liên kết nhau bằng sự kê thừa một thành viên lớp không thể truy nhập dữ liệu ưong một lớp khác theo cách trừu tượng. Nghĩa là chúng ta không thể nói alpha adata 3 loi yeu cau doi tuong Nếu beta được rút ra từ alpha thì điều này có thể được. Chúng là hai lớp riêng và tình bạn không giống tình gia tộc. Phải có một đối tượng thật hay một con ưỏ trỏ tới đối tượng thật như chúng ta sẽ thấy trong đó có dữ liệu. alpha objA 3 . Truy nhập các thành viên private trong một lớp chưa được định nghĩa Bây giờ giả sử một hàm thành viên của alpha afunc muốn truy nhập dữ liệu private trong beta. Vấn đề này cần được xem xét vì mô tả cho lớp beta đứng sau alpha và trình biên dịch cần biết một lớp xác định trước khi nó có thể truy nhập các thành viên của lóp. Trong trường hợp này phương pháp đặc biệt là di chuyển định nghĩa hàm thành viên afunc ra khỏi mô tả lớp alpha và đặt nó sau mô tả lớp beta. Bản 4-22 là chương ưình IN 1ERC2. Listing 4-22 INTERC2 truy nhap du lieu trong mot lop chua duoc dinh nghĩa include class alpha public void afuncO khai bao ham dinh nghía phai dat sau beta class beta 109 private friend class alpha de alpha co .

Không thể tạo bản xem trước, hãy bấm tải xuống
TỪ KHÓA LIÊN QUAN
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.