ví dụ đơn giản này cho thấy C++ Cú pháp để gọi constructor của lớp cha - như xa như tôi hiểu nó như là một C++ học:C++: Gọi một constructor lớp cơ sở với một đối số tính
class BaseClass {
protected:
int i;
public:
BaseClass(int x) {
i = x;
}
};
class DerivedClass: public BaseClass {
int j;
public:
DerivedClass(int x, int y): BaseClass(y) {
j = x;
}
Ở đây, lớp cơ sở constructor có thể lấy các đối số được đặt tên cho hàm tạo lớp dẫn xuất như đầu vào.
Bây giờ, điều gì sẽ xảy ra nếu tôi muốn gọi hàm tạo BaseClass()
với giá trị đầu vào không phải là đầu vào trực tiếp cho DerivedClass()
? Về cơ bản, tôi muốn thực hiện một số công việc nhiều lần với x
và y
trong phạm vi DerivedClass()
, sau đó chuyển giá trị được tính đến BaseClass()
. Điều này có thể được thực hiện với các nhà thầu? Điều này có nên được thực hiện với một số loại phương pháp khởi tạo thay thế?
@Seth Carnegie: Cảm ơn sự mất tích ' ; 'fix: DI đoán tôi đã làm quá nhiều Python gần đây. – ereOn