Virtual Method and Polymorphism
Virtual Method and Polymorphism
class parent;
bit data;
endfunction
endclass
bit[31:0] addr;
int data;
endfunction
endclass
module tb;
parent p;
child c;
initial
begin
p=new();
c=new();
p=c;
p.addr=3;
p.data=4;
c.addr=5;
c.data=8;
p.display();
c.display();
end
endmodule
class parent;
bit [31:0] addr;
bit data;
virtual function void display();
$display("Parent : addr=%0d data=%0d",addr,data);
endfunction
endclass
https://www.edaplayground.com/x/R8Pb