- điểm khác biệt giữa struct và class là các thành phần của struct mặc định là public().
-đa hình:tính đa hình thì thằng cha nó có bao nhiêu hàm thì thằng con chỉ được định nghĩa lại chứ không được tạo thêm
+ta có 1 lớp cha hình lớp con hình tròn thừa kế từ lớp cha
+trong lớp cha hình có phương thức virtual area() để tính diện tích
+bây giờ nếu chúng ta khởi tạo 1 đối tượng
hinh*a=new hinh tròn//(thì nó sẽ là đối tượng của lớp tròn)
a->area() thì sẽ là diện tích của hình tròn
delete a;
hinh*a=new hình vuông//(thì nó sẽ là đối tượng của lớp hình vuông)
a->area() thì nó sẽ là diện tích của hình vuông
delete a
hinh*a=new hinh;
a>area(); thì nó tính là lớp hình
muốn sử dụng da hình thì phải khai báo con trỏ còn phương thức đa hình phải ở dạng virtual còn không phải đa hình cứ khai báo như bình thường
-chúng ta sử dụng thừa kế chỉ nhằm mục đích đỡ phải viết lại mã nguồn có nghĩa là thằng A có 100 viên bi 50 bi xanh 50 bi đỏ chúng ta cho thằng B thừa kế thằng A chính là chúng ta thừa kế 50 bi xanh 50 bi đỏ nhưng thằng B khác thằng A nên chúng ta có thể viết lại mã nguồn thằng B bi xanh thành bi tím còn 50 bi đỏ thì hiển nhiên có vì nó thừa kế nói chung muốn thay đổi kiểu như viết đè lên