Làm sao để lấy giá trị của đối tượng trong class này sử dụng cho class khác (mà không dùng hàm bạn, kế thừa, dẫn xuất)

Là thế này: mình có bài tập nhập xuất phiếu nhập nông trại, trong đó:

class tồn kho có đối tượng Phát sinh tăng được lấy dẫn từ phiếu nhâp
VD: nhập rau cải có số lượng 10 thì phát sinh tăng cũng bằng 10
mà đối tượng sl đó mình để trong class ChitietPhieunhap
Vậy mình phải làm sao đây ??help me

Thế thì chắc chỉ còn có cách là Composition over Inheritance – ‘Cấu thành’ thay vì ‘Kế thừa’


Đơn giản nhất là trong class này có property là reference tới instance của class nọ.

1 Like

Cảm ơn bạn nhưng mà không dùng kế thừa bạn ơi

Không, Composite không phải là kế thừa.

class OtherClass 
{
public:
   int farAwayData = 0;
};
class MainClass
{
public:
   OtherClass *a; // <= không cần kế thừa
   MainClass() 
   {
      this->a = new OtherClass;
      std::cout << this->a->farAwayData << std::endl;
   }
};
2 Likes

Ohhh. Mình cảm ơn bạn nhiều nha

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?