Poll

Do you like the discussion forum ?

Class definitions can become very long with a lot of lines between class and endclass. This makes it difficult to understand what all functions and variables exist within the class because each function and task occupy quite a lot of lines.

Using extern qualifier in method declaration indicates that the implementation is done outside the body of this class.

Example

 
class ABC;
 
  // Let this function be declared here and defined later
  // by "extern" qualifier
  extern function void display();
 
endclass
 
// Outside the class body, we have the implementation of the
// function declared as "extern"
function void ABC::display();
 
   $display ("Hello world");
 
endfunction
 
module tb;
 
  // Lets simply create a class object and call the display method
  initial begin
    ABC abc = new();
    abc.display();
  end
endmodule
 
Simulation Log
ncsim> run
Hello world
ncsim: *W,RNQUIE: Simulation is complete.

Click to try this example in a simulator!   

You may also like:

You consent to our cookies if you continue to use our website. To know more about cookies, see our privacy policy. I accept cookies from this site.

Agree