Gracias DEC y movorack por responder
Cita:
Empezado por Neftali [Germán.Estévez]
Si, yo también me di cuenta del cambio de palabra overload/override David, pero el problema está en la definición de las clases base, que como he dicho no están definidas para que se puedan "sobreescribir".
Como bien dices, al realizar el cambio da el error de "Cannot override a non-virtual method".
|
Ese es el error que me estuvo trastocando todo el tiempo
y la necesidad de buscar alguna alternativa al problema.
En cuanto al reintroduce también lo intente y el resultado fue el mismo. En tu código te ha funcionado porque has llamado directamente al método create de la clase TMyIniFile, y de este modo incluso con el overload funciona
Cita:
Empezado por movorack
Puedes usar reintroduce
Código Delphi [-]
FConfig := TMyIniFile.Create(ChangeFileExt(ParamStr(0), '.ini'));
|
pero en mi código la llamada es a traves de una variable que apunta a una clase derivada de TINIFile y no de TMyIniFile, y para este caso el reintroduce también sigue fallando.
Código Delphi
[-]
type
TClassIniFile = class of TInifile;
var
ClassIniFile: TClassIniFile = nil;
...
ClassIniFile:=TMyIniFile;
ClassIniFile.create(IniFileName);
Gracias a todos por dedicarle tiempo a esta cuestión
Un saludo