tailieunhanh - Bài giảng Lập trình hướng đối tượng: Chương 4 - Trần Minh Thái

Chương 4 của bài giảng Lập trình hướng đối tượng giới thiệu về khả năng đa năng hoá toán tử của C++. Thông qua chương này người học có thể biết được cách cách cài đặt và sử dụng đa năng hoá toán tử, nắm bắt được một số kỹ thuật đa năng hoá toán tử đặc biệt. Mời tham khảo. | Chương 4 Đa năng hoá toán tử TRẦN MINH THÁI Email: minhthai@ Website: Cập nhật: 10 tháng 02 năm 2015 Nội dung Giới thiệu Cách cài đặt & sử dụng đa năng hoá toán tử Một số kỹ thuật đa năng hoá toán tử đặc biệt 2 Giới thiệu (1/3) Đa năng hóa toán tử là khả năng của C++ cho phép định nghĩa lại toán tử (+, -, *, / , ) trên kiểu dữ liệu khác Chương trình ngắn gọn, dễ đọc và có ý nghĩa hơn so với việc gọi hàm bình thường Đa năng hóa toán tử bằng cách định nghĩa hoạt động của từng toán tử giống như định nghĩa một hàm hàm toán tử Giới thiệu (2/3) Cú pháp: type_name operator operator_symbol ( parameters_list ) { } Hàm toán tử Hàm toàn cục (hàm tự do) hàm friend Hàm thành viên của lớp (hàm non-static) có thuộc tính truy xuất public Giới thiệu (3/3) Cú pháp khi gọi Khai báo Hàm thành viên Hàm toàn cục aa#bb (bb) operator#(aa,bb) #aa () operator#(aa) aa# (int) operator#(aa,int) Với # là ký hiệu dấu toán tử Các lưu ý (1/) Không thể định nghĩa toán tử mới Phần lớn các toán tử được đa năng hóa ngoại trừ các toán tử sau: . .* :: ?: typeid sizeof const_cast dynamic_cast reinterpret_cast static_cast Không thể đa năng hóa ký hiệu tiền xử lý Không thể thay đổi độ ưu tiên của toán tử hay số các toán hạng của nó Các lưu ý (2/) Không thể thay đổi ý nghĩa của toán tử khi áp dụng các kiểu cài sẵn Không dùng tham số có giá trị mặc định Các toán tử: = [] () -> đòi hỏi hàm toán tử phải là hàm thành viên Phải chủ động định nghĩa toán tử += -= *= /= dù đã định nghĩa + - * / Tham số (1/2) Số lượng các tham số của hàm toán tử phụ thuộc: Toán tử một ngôi hay hai ngôi Toán tử được khai báo là hàm toàn cục hoặc hàm thành viên Tham số (2/2) Nên sử dụng tham chiếu khi có thể (đối tượng lớn) Luôn sử dụng tham số hằng tham chiếu nếu tham số không bị sửa đổi bool CComplex::operator == (const CComplex & c) const; Hàm thành viên nên khai báo là hàm thành viên hằng nếu toán hạng đầu tiên không bị sửa đổi Các toán tử tính . | Chương 4 Đa năng hoá toán tử TRẦN MINH THÁI Email: minhthai@ Website: Cập nhật: 10 tháng 02 năm 2015 Nội dung Giới thiệu Cách cài đặt & sử dụng đa năng hoá toán tử Một số kỹ thuật đa năng hoá toán tử đặc biệt 2 Giới thiệu (1/3) Đa năng hóa toán tử là khả năng của C++ cho phép định nghĩa lại toán tử (+, -, *, / , ) trên kiểu dữ liệu khác Chương trình ngắn gọn, dễ đọc và có ý nghĩa hơn so với việc gọi hàm bình thường Đa năng hóa toán tử bằng cách định nghĩa hoạt động của từng toán tử giống như định nghĩa một hàm hàm toán tử Giới thiệu (2/3) Cú pháp: type_name operator operator_symbol ( parameters_list ) { } Hàm toán tử Hàm toàn cục (hàm tự do) hàm friend Hàm thành viên của lớp (hàm non-static) có thuộc tính truy xuất public Giới thiệu (3/3) Cú pháp khi gọi Khai báo Hàm thành viên Hàm toàn cục aa#bb (bb) operator#(aa,bb) #aa () operator#(aa) aa# (int) operator#(aa,int) Với # là ký hiệu dấu toán tử Các lưu

TỪ KHÓA LIÊN QUAN