Professional Documents
Culture Documents
(tiếp)
int Rectangle::setWidth(double w)
{
width = w;
}
Con trỏ tới đối tượng
• Có thể định nghĩa con trỏ tới một đối tượng:
Rectangle *rPtr;
rPtr = &otherRectangle;
rPtr->setLength(12.5);
cout << rPtr->getLength() << endl;
Cấp phát động một đối tượng
Lớp Rectangle với các hàm inline
4.3. Hàm tạo và hàm hủy
Hàm tạo - Constructor
• Hàm thành viên được tự động gọi khi một
đối tượng được tạo ra
Truyền tham số vào hàm tạo
– Chỉ rõ các tham số trong nguyên mẫu hàm:
Rectangle(double, double);
Tên lớp
- width : double
- length : double
Ký pháp kiểu tham biến UML
• Để chỉ định kiểu dữ liệu của một tham biến
của hàm: đặt dấu hai chấm trước tên kiểu
dữ liệu và sau tên biến
+ setWidth(w : double)
Kí pháp kiểu dữ liệu trả về của hàm
• Để chỉ định kiểu dữ liệu trả về của hàm,
đặt dấu hai chấm trước tên của kiểu dữ
liệu và sau danh sách tham biến.
• Kích hoạt:
object1.operator=(object2);
object1 = object2;
Giá trị trả về
Con trỏ this
• this: con trỏ được định nghĩa trước, có thể
được sử dụng bởi mọi hàm trong lớp
• Luôn trỏ đến thực thể (đối tượng) của lớp
mà hàm của nó đang được gọi
Ví dụ
4.6. Một số mối quan hệ
giữa các lớp
Quan hệ phối hợp (Aggregation)
• Aggregation: một lớp là một thành phần
của một lớp khác.
Ví dụ
Quan hệ giữa Instructor, Course,
TextBook
Quan hệ tổng hợp
(Composition)
• Đối tượng “bị sở hữu” là dành riêng/độc
quyền cho đối tượng chứa nó
Composition Aggregation