Em chào mấy anh/ chị ^^. Em học đến phần kế thừa và có 2 thắc mắc, mong được a/c giải đáp:
-
Trong hình bên dưới tại sao biết con trỏ(hàm) vtable của B1 quản lí fd() mà không phải do vtable của B2 quản lí?
-
Giả sử cũng hình bên dưới nhưng không có class B2; class B1 có thêm 1 thuộc tính Private là int xxx; Vậy khi trong Main ta tạo 1 đối tượng D qwert; class D tuy không kế thừa thuộc tính xxx từ B1, nhưng khi khởi tạo đối tượng “qwert” như trên thì đối tượng thuộc class cha(B1) sẽ được tạo ra trước rồi mới tới đối tượng thuộc class con(D), do đó em không biết là thành phần xxx có được tạo ra trong quá trình hàm tạo của class cha dc gọi hay ko (em bị mâu thuẩn chỗ này vì xxx là thành phần của class cha nên khi hàm tạo dc gọi thì xxx cũng phải dc tạo ra, nhưng nếu nó dc tạo ra thì cũng khá dư thừa do trong phạm vị class D cũng chẳng truy cập dc tới nó)?
nếu có thì có phải xxx sẽ nằm ở ô nhớ đầu ko ạ?
Em cảm ơn mn!