Danh mục tài liệu

Bài giảng Lập trình hướng đối tượng: Chương 4 - GV. Dương Khai Phong

Số trang: 29      Loại file: pdf      Dung lượng: 3.71 MB      Lượt xem: 15      Lượt tải: 0    
Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Mục tiêu trình bày của chương 4 Đa năng hóa toán tử thuộc bài giảng lập trình hướng đối tượng nhằm trình bày về các nội dung chính: khái niệm đa năng hóa toán tử, đa năng toán tử một ngôi, đa năng toán tử hai ngôi, định nghĩa lại ghép gán, đa năng hóa toán tử nhập /xuất.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng: Chương 4 - GV. Dương Khai PhongĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong Số tiết lý thuyết: 45 tiết Số tiết thực hành: 30 tiết 1 http://sites.google.com/site/khaiphong Nội dung môn học:  Chương 1: Tổng quan về OOP  Chương 2: Lớp & đối tượng  Chương 3: Hàm và hàm đa năng trong OOP  Chương 4: Đa năng hóa toán tử  Chương 5: Sự kế thừa và tính đa hình 2 http://sites.google.com/site/khaiphong Chương 4: Đa năng hoá toán tử  Khái niệm đa năng hóa toán tử  Đa năng hóa toán tử một ngôi (++,--)  Đa năng hóa toán tử hai ngôi (+,-,*,/,…)  Định nghĩa lại phép gán (=)  Đa năng hóa toán tử nhập/xuất (>>, Chương 4: Đa năng hoá toán tử http://sites.google.com/site/khaiphong Khái niệm đa năng hóa toán tử Khái niệm  Khái niệm: Ví dụ Là khả năng kết hợp một toán tử đã có (+,- Cú pháp ,*,/,>, Chương 4: Đa năng hoá toán tử http://sites.google.com/site/khaiphong Khái niệm đa năng hóa toán tử Khái niệm  Cú pháp: Ví dụ operator@(DS_đối số) Cú pháp Trong đó: @ là toán tử cần đa năng Ví dụ: Đặc điểm Cách khai báo trước: Phanso cong(Phanso) Cách khai báo đa năng: Phanso operator+(Phanso)  Đặc điểm:  Không được phép thay đổi chức năng cơ bản,ý nghĩa nguyên thủy của toán tử hoặc thay đổi thứ tự ưu tiên của chúng.  Các toán tử không thể đa năng hóa: . .* :: ?: sizeof 5 http://sites.google.com/site/khaiphong Chương 4: Đa năng hoá toán tử  Khái niệm đa năng hóa toán tử  Đa năng hóa toán tử một ngôi (++,--)  Đa năng hóa toán tử hai ngôi (+,-,*,/,…)  Định nghĩa lại phép gán (=)  Đa năng hóa toán tử nhập/xuất (>>, Chương 4: Đa năng hoá toán tử http://sites.google.com/site/khaiphong Đa năng hóa toán tử một ngôi (++,--) Khái niệm  Khái niệm: Đặc điểm Toán tử một ngôi là gì? Cú pháp  Đặc điểm: Các toán tử này được sử dụng theo 2 cách: toán Ví dụ tử đứng trước (prefix) (++a) hay toán tử đứng sau (postfix) (a++) Ví dụ: cho biết kết quả của CT sau void main(){ void main(){ int a,b; int a,b; a=5; a=5; a++; b=++a; cout Chương 4: Đa năng hoá toán tử http://sites.google.com/site/khaiphong Đa năng hóa toán tử một ngôi (++,--) Khái niệm  Cú pháp khai báo trong lớp: Đặc điểm  Toán tử đứng trước (prefix): operator++() Cú pháp  Toán tử đứng sau (postfix): Ví dụ operator++(int) Tham số int được gọi là tham số giả (chỉ định toán tử đứng sau) Định nghĩa bên ngoài lớp: ::operator++() { …. } Ví dụ: 8 Chương 4: Đa năng hoá toán tử http://sites.google.com/site/khaiphongclass Phanso{ void main(){ private: int tu,mau; Phanso a(1,2),b; public: Phanso(int t=0,int m=1); a++; // KQ: a=3/2 Phanso operator++(); a.xuat(); Phanso operator++(int); void xuat(); ++a; // KQ: a=5/2}; a.xuat();Phanso::Phanso(int t,int m){ b=++a; // KQ: a=7/2 và b=7/2 tu=t; mau=m;} a.xuat();Phanso Phanso::operator++(){ tu=tu+mau; b.xuat(); return *this;} b=a++; // KQ: a=9/2 và b=7/2Phanso Phanso::operator++(int){ a.xuat(); Phanso temp=*this; tu=tu+mau; b.xuat(); return temp; cout http://sites.google.com/site/khai ...