Skip to main content

Advertencia del compilador C0269

Mesaje: La instancia a la que apunta  <desreferenciación de puntero>  se reinicializará para las llamadas a funciones virtuales. Asegúrese de que <desreferenciación de puntero> no apunte a un tipo derivado de <base FB> .

Posible causa del error: La dirección de un bloque de funciones derivado se utiliza como la dirección del bloque de funciones base.

ejemplo 463. Ejemplo de la advertencia
FUNCTION_BLOCK FBBase
...

FUNCTION_BLOCK FBDerived EXTENDS FBBase
...

FUNCTION_BLOCK FB EXTENDS Base_FB
...
PROGRAM PLC_PRG
VAR
      pinst : POINTER TO FBBase;
      inst2_2 : FBDerived;
END_VAR
pinst := ADR(inst2_2);
pinst^ := inst2_2;

La desreferenciación del puntero produce la siguiente advertencia.

Mensaje:

C0269: La instancia a la que apunta pinst^ se reinicializará para las llamadas a funciones virtuales. Asegúrese de que pinst^ no apunte a un tipo derivado de FBBase



: