1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI GIẢNG HỖ TRỢ OO của Borland C++

51 256 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 51
Dung lượng 159,5 KB

Nội dung

Chương HỖ TRỢ OO Borland C++ Mục tiêu • • • • • • Biết cách sử dụng trỏ this Sử dụng hàm lớp với thị friend Hiện thực sử dụng constructor Hiện thực sử dụng desstructor Lập trình với mảng đối tượng Hiện thực thuộc tính hàm static Nội dung 3.1- Ôn tập 3.2- Con trỏ this 3.3- Hàm friend 3.4- Lớp friend 3.5- Constructor 3.6- Destructor 3.7- Mảng đối tượng 3.8- Thuộc tính static lớp 3.9- Hành vi static lớp 3.10- Tóm tắt 3.1- Ôn tập Cú pháp thực class class ClassName •Các modifier: public, private, protected: từ khóa { public : định đặc tính thành phần sau thị < data > Mặc định private • public: cho phép bên truy cập  interface private : lớp < data > • private: thành phần nội, không cho phép bên truy cập < method> • protected: thành phần dành cho lớp thừa kế protected : truy cập, không cho phép đối tượng < data > truy cập } ; // có ký tự ‘;’ 3.2- Con trỏ this ? • this: từ khóa, pointer đến đối tượng hành • Được dùng code method lớp Con trỏ this… class D { private : int b,c,y,z ; public : void f () { y=1 ; this -> z = ; } void g (void) { (*this).b = ; c=1; } }; Trong code method: y=1; tương đương với this -> y = 1; • Khi cần trả trị pointer đối tượng hành: return this; • Khi cần trả trị đối tượng hành: return *this; • Khi cần trả trị pointer đến đối tượng hành: return this; • this pointer đến đối tượng hành nên (*this) đối tượng hành 3.3- Hàm friend - Chỉ thị friend giúp cho phép hàm (hướng thủ tục) truy cập MỌI thành phần lớp • Chỉ định friend prototype hàm khai báo lớp • Hàm friend nhận đối tượng thuộc lớp làm tham số hàm hướng thủ tục •Khi thực hàm friend, thị friend •Khi thực hàm có tham số mặc định bên lớp, không định trị mặc định Nếu có trị mặc định gây lỗi lúc compile 3.4- Lớp friend • Tương tự hàm friend, lớp friend truy cập MỌI thành phần lớp có khai báo đặc tính • Thí dụ: • Khi B friend A class A B có phương thức nhận đối tượng {private : lớp A tham số int Secret ; // điều bí mật (điểm) • B friend A friend class B ; // Khai báo lớp friend chưa A friend B- Điều phụ thuộc B có khai báo A }; friend B hay không class B // Khai báo lớp B { public: void Change (A *T) // Sửa điểm cho đối tượng lớp A { T->Secret++ ; } // truy cập thành phần private đối tượng lớp A }; 3.5- Constructor Có thể kết hợp định nghĩa khởi tạo trị cho biến đơn Thí dụ: int m=7; Có thể làm điều tương tự với biến đối tượng nhờ constructor Constructor:Hành vi thực thi lúc định nghĩa biến đối tượng Mọi lớp hiển nhiên có constructor mặc định ngôn ngữ Đa số constructor mặc định ngôn ngữ OOP có tác vụ xóa trống nhớ cho liệu đối tượng thuộc lớp lớp không thực constructor Demo: Default constructor BC++ • Default constructor BC++ không xóa trống nhớ chứa liệu đối tượng Câu Chọn phát biểu sai a- Hàm friend lớp hàm phép truy cập thuộc tính lớp bb- Hàm friend lớp hàm phép truy cập thuộc tính public lớp cc- Hàm friend lớp hàm không phép truy cập thuộc tính protected lớp Câu class A khai báo friend class B ( khai báo class A) Thông thường class A có hành vi nhận đối tượng class B tham số a- Đúng b- Sai a c- Không biết Câu Constructor class a a- Buộc phải public b- Có thể private Câu Chọn phát biểu sai a a- Nếu user class C++ constructor sử dụng đối tượng thuộc lớp b- Nếu user class C++ constructor sử dụng đối tượng thuộc lớp c- Destructor lớp có tham số b Câu Hãy chọn đề nghị tốt cho lớp sau: class A { int *a ; public: A() { a= new int [1000];} }; a- Không có cần cải tiến b- Thêm method có ý nghĩa c c- Cần xây dựng destructor Câu Chọn phát biểu sai Có hai lớp A,B có constructor, B public A Khi định nghĩa đối tượng lớp B a- Constructor A thực thi trước, constructor B thực thi sau b- Constructor B làm thực thi, constructor A thực thi sau b Câu a Chọn phát biểu sai Có hai lớp A,B có constructor, B public A Khi hủy đối tượng lớp B a- Destructor A thực thi trước, destructor B thực thi sau b- Destructor B thực thi trước, destructor A thực thi sau Câu Chọn phát biểu sai a- Constructor có tham số a b- Constructor có tham số c- Constructor buộc phải có tham số c Câu 10 Chọn phát biểu a- Constructor destructor có tham số b- Constructor destructor có tham số c- Constructor destructor buộc phải có tham số d- Constructor có tham số, destructor buộc phải có tham số ee- Constructor có tham số, destructor có tham số f- Destructor có tham số, constructor buộc phải có tham số g- Destructor có tham số, constructor có tham số Câu 11 Dữ liệu static lớp phải khai báo lại bên lớp a- Đúng a b- Sai Câu 12 Chọn phát biểu sai: Hành vi static lớp hành vi a a- Không cho phép bên sử dụng hành vi đặc riêng lớp b- Cho phép bên sử dụng mà không cần phải có đối tượng thuộc lớp c c- Chỉ cho phép bên sử dụng trường hợp không tồn đối tượng thuộc lớp Câu 13 Tầm vực đối tượng a b a- Là khối văn chương trình kể từ lúc định nghĩa đối tượng đến hết khối chứa b- Là vùng văn chương trình truy xuất đối tượng c- Là toàn chương trình Câu 14 Chọn phát biểu sai Thời gian sống đối tượng: a- Là thời gian thực thi chương trình b- Là thời gian kể từ lúc đối tượng định a nghĩa đến chương trình thực thi xong c- Là thời gian kể từ lúc đối tượng định nghĩa đến khối chương trình chứa đối tượng thực thi xong Câu 15 Trạng thái đối tượng: a- Là khối nhớ chứa liệu mô tả đối tượng b- Là tập gía trị thuộc tính hành b đối tượng c- Là chương trình chứa đối tượng d- Là thuộc tính đối tượng Xin cảm ơn

Ngày đăng: 25/08/2017, 09:50

TỪ KHÓA LIÊN QUAN

w