In reply to eranv:
Here is a complete example that works:
test.sv
import "DPI-C" function void nmu_cpp_get_l_y_msb_array_by_index(int index,chandle handle, output int result[]);
module test();
function void nmu_sv_get_l_y_msb_array_by_index(int index);
int result[100];
nmu_cpp_get_l_y_msb_array_by_index(index,null,result);
endfunction : nmu_sv_get_l_y_msb_array_by_index
initial begin
nmu_sv_get_l_y_msb_array_by_index(1);
end
endmodule
test.cpp
#include "svdpi.h"
extern "C" void nmu_cpp_get_l_y_msb_array_by_index(int index,void* handle,const svOpenArrayHandle result);
void nmu_cpp_get_l_y_msb_array_by_index(int index,void* handle ,const svOpenArrayHandle result){
//myclass* p_cpp_nmu = static_cast<myclass *>(handle);
uint32_t myArray[2]= {8,10};
svPutBitArrElemVecVal(result,myArray, 1);
}