Những gì được thừa kế từ lớp cơ sở?
Về nguyên tắc tất cả các thành viên của lớp đều được thừa kế trừ:
Constructor và destructor
Thành viên
operator=()
Bạn bè
Mặc dù constructor và destructor của lớp cơ sở không được thừa kế, constructor
mặc định (constructor không có tham số) và destructor của lớp cơ sở luôn luôn
được gọi khi một đối tượng của lớp được thừa kế được tạo lập hay phá huỷ.
Nếu lớp cơ sở không có constructor mặc định hay bạn muốn một constructor đã
quá tải được gọi khi một đối tượng mới của lớp được thừa kế được tạo lập, bạn
có thể chỉ định nó ở mỗi định nghĩa của constructor trong lớp được thừa kế:
derived_class_name (parameters) : base_class_name (parameters)
{}
Ví dụ:
// constructors and derivated classes
#include <iostream.h>
class mother {
public:
mother ()
{ cout << "mother: no parameters\n"; }
mother (int a)
{ cout << "mother: int parameter\n"; }
};