In reply to Varunshivashankar:
Write your function to
new the dynamic array first.
function initialize_setup (int number_inst = 1);
super.initialize_setup(1);
array = new[number_inst]; // you forgot to do this
foreach(array[ii]) // now you can use a foreach instead of for loop
begin
array[ii] = parent_class::type_id::create($sformatf("array%0d",ii), this);
array[ii].initialize_setup(1);
end
endfunction