Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Regarding memory allocation of the object in SV

Status
Not open for further replies.

pkoti83

Newbie level 5
Newbie level 5
Joined
Oct 22, 2013
Messages
10
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Visit site
Activity points
94
Can you please correct me , if the details which i have mentioned below are wrong

EXAMPLE: without virtual
class A ;
task disp ();
$display(" This is class A ");
endtask
endclass

class B extends A ;
task disp ();
$display(" This is Extended class A ");
endtask
endclass

program main ;
B B1; //Handle B1 is declared for an object B
A A1; //Handle A1 is declared for an object A

initial
begin
A1 = new(); //1)object will be created 2) construct the object 3) Assign the address of an object A to A1.
A1.disp(); // call the disp() task of parent class

B1 = new(); //1)object will be created 2) construct the object 3) Assign the address of an object B to B1.
A1 = B1; // assigning B1 pointer to A1 i.e Both A1 and B1 Pointing to same object
(1) My question in this case is an object A with out handle leads to deallocation of an object A then
if you call A1.disp() task how it will give result as "This is class A"
2) how we can call a parent class method with out an object A

A1.disp();
end
endprogram
RESULTS

This is class A
This is class A (It should not be displayed because there is no Object A i.e Object A handle is assigned to Object B by using this equation A1 = B1, it indicates that Object A is deallocated)
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top