Danh mục

Bài giảng Nguyên lý lập trình hướng đối tượng: Bài 3 - TS. Lý Anh Tuấn

Số trang: 43      Loại file: pdf      Dung lượng: 4.14 MB      Lượt xem: 17      Lượt tải: 0    
Jamona

Hỗ trợ phí lưu trữ khi tải xuống: 15,000 VND Tải xuống file đầy đủ (43 trang) 0
Xem trước 5 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Nguyên lý lập trình hướng đối tượng: Bài 3 Cấu trúc và lớp, cung cấp cho người học những kiến thức như: Các kiểu cấu trúc; Cấu trúc là đối số hàm; Khởi tạo cấu trúc; Định nghĩa, hàm thành viên; Các thành phần public và private; Hàm truy cập và hàm biến đổi. Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Nguyên lý lập trình hướng đối tượng: Bài 3 - TS. Lý Anh TuấnNGUYÊN LÝ LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài 3: Cấu trúc và lớp Giảng viên: TS. Lý Anh Tuấn Email: tuanla@tlu.edu.vnNội dung1. Cấu trúc ◦ Các kiểu cấu trúc ◦ Cấu trúc là đối số hàm ◦ Khởi tạo cấu trúc2. Lớp ◦ Định nghĩa, hàm thành viên ◦ Các thành phần public và private ◦ Hàm truy cập và hàm biến đổi ◦ Cấu trúc vs. Lớp 2Cấu trúc Là kiểu dữ liệu gộp giống như mảng Điểm khác biệt so với mảng: ◦ Mảng: tập các giá trị có cùng kiểu ◦ Cấu trúc: tập các giá trị có kiểu khác nhau Định nghĩa cấu trúc: ◦ Trước khi khai báo biến ◦ Ở phạm vi toàn cục ◦ Việc định nghĩa không cấp phát bộ nhớ 3Cấu trúc Ví dụ: struct CDAccountV1  tên của kiểu cấu trúc mới { double balance;  tên thành viên double interestRate; int term; }; Khai báo biến cho kiểu mới này CDAccountV1 account; ◦ Giống như khai báo các kiểu đơn giản ◦ Biến account có kiểu là CDAccountV1 ◦ Nó bao chứa các giá trị thành viên 4Truy cập các thành viên cấu trúc Dùng toán tử . để truy cập các thành viên ◦ account.balance ◦ account.interestRate ◦ account.term Được gọi là các biến thành viên ◦ Là thành phần của biến cấu trúc ◦ Các cấu trúc khác nhau có thể có các biến thành viên cùng tên 5Ví dụ về cấu trúc 6Ví dụ về cấu trúc 7Ví dụ về cấu trúc Kết quả thực thi 8Lỗi thường gặp với cấu trúc Quên dấu chấm phẩy sau định nghĩa cấu trúc struct WeatherData { double temperature; double windVelocity; };  Cần có dấu chấm phẩy! Bạn cũng có thể khai báo các biến cấu trúc ở vị trí trước dấu ; 9Phép gán cấu trúc Cho trước một cấu trúc tên là CropYield Khai báo hai biến cấu trúc: CropYield apples, oranges; ◦ Cả hai là biến thuộc kiểu cấu trúc CropYield ◦ Cho phép thực hiện phép gán đơn giản: apples = oranges; ◦ Việc này sao chép giá trị mỗi biến thành viên của oranges vào các biến thành viên của apples 10Cấu trúc là đối số hàm Có thể được truyền giống như các kiểu dữ liệu đơn giản ◦ Truyền giá trị ◦ Truyền tham chiếu ◦ Hoặc kết hợp Cũng có thể được trả về bởi hàm ◦ Kiểu trả về là kiểu cấu trúc ◦ Lệnh trả về trong định nghĩa hàm gửi biến cấu trúc trở lại lời gọi 11Khởi tạo cấu trúc Có thể khởi tạo lúc khai báo Ví dụ: struct Date { int day; int month; int year; }; Date dueDate = {31, 12, 2003}; Khai báo cung cấp dữ liệu khởi tạo cho cả ba biến thành viên 12Lớp Lớp bao gồm: ◦ Dữ liệu thành viên (giống cấu trúc) ◦ Có thêm hàm thành viên Cần cho lập trình hướng đối tượng ◦ Tập trung vào các đối tượng  Đối tượng: Bao gồm dữ liệu và thao tác  Trong C++, biến kiểu lớp là đối tượng 13Định nghĩa lớp Định nghĩa tương tự cấu trúc Ví dụ: class DayOfYear  tên của kiểu lớp mới { public: void output();  hàm thành viên! int day; int month; }; Lưu ý: chỉ có nguyên mẫu của hàm thành viên, thi hành hàm nằm ở nơi khác 14Khai báo đối tượng Khai báo tương tự các biến ◦ Kiểu có sẵn, kiểu cấu trúc Ví dụ: DayOfYear today, birthday;  Khai báo hai đối tượng kiểu lớp DayOfYear Các đối tượng bao gồm ◦ Dữ liệu: thành viên day, month ◦ Thao tác (hàm thành viên): output() 15Truy cập thành viên lớp Truy cập thành viên lớp tương tự như cấu trúc Ví dụ: today.day today.month ◦ Để truy cập hàm thành viên: today.output();  gọi hàm thành viên 16Hàm thành viên lớp Cần định nghĩa hoặc “thi hành” hàm thành viên lớp Giống như định nghĩa hàm ◦ Có thể đặt sau hàm main() ◦ Cần chỉ rõ lớp Ví dụ: void DayOfYear::output() {…} ◦ :: là toán tử phân giải phạm vi ◦ Nói cho trình biên dịch biết thành viên từ lớp nào ◦ Tên lớp trước :: được gọi là từ định kiểu 17Định nghĩa hàm thành viên lớp Xem định nghĩa của hàm thành viên output() (ví dụ trang sau) ...

Tài liệu được xem nhiều: