rectres.width = rectparam.width*2;
rectres.height = rectparam.height*2;
return (rectres);
}
int main () {
CRectangle rect, rectb;
rect.set_values (2,3);
rectb = duplicate (rect);
cout << rectb.area();
}
24
Ở bên trong hàm
duplicate
, chúng ta có thể truy xuất vào các thành viên
width
và
height
của các đối tượng khác nhau thuộc lớp
CRectangle
. Hãy chú ý
rằng
duplicate()
không phải là thành viên của lớp
CRectangle
.
Nói chung việc sử dụng các hàm bạn bè không nằm trong phương thức lập trình
hướng đối tượng, vì vậy tốt hơn là hãy sử dụng các thành viên của lớp bất cứ
khi nào có thể. Như ở trong ví dụ trước, chúng ta hoàn toàn có thể tích hợp
duplicate()
vào bên trong lớp.