Công trình này:Làm cách nào tôi có thể gọi phương thức tổ tiên `Kế thừa` trong các hàm ảo bị ghi đè?
constructor TMyObj.Create;
begin
inherited;
end;
Tại sao điều này không hoạt động?
function TMyObjEx.Import(CONST FileName: string; CONST x, y, z: Integer): string;
begin
result:= inherited; // Import(FileName, x, y, z); <--- Compiler says: "incompatible types"
//do other stuff here
end;
Tuyên bố của TMyObjEx là như thế này:
TYPE
TMyObj = class(TChObj)
private
protected
public
function Import (CONST FileName: string; CONST x, y, z: Integer): string; virtual;
end;
TMyObjEx= class(TMyObj)
private
protected
public
function Import(CONST FileName: string; CONST x, y, z: Integer): string; override;
end;
Stackoverflow phải có một danh mục khác "phê bình không có cấu trúc" nơi người hỏi chỉ trích ngôn ngữ, thư viện hoặc công cụ cải trang thành câu hỏi. – nurettin