|
Устанавливает свойство объекта JS+ типа массив Number, приведенное из типа массив int (для приложений С++) или integer (для приложений Delphi).
Синтаксис
int __stdcall JSP_objSetIntArr(
| hObj, | prp_cName, | prp_Array, | arr_Size
| );
|
Параметры
|
Параметр
| Тип
| Описание
|
hObj
| size_t
| объект JS+, имеющий свойство типа массив Number
|
prp_cName
| char*
| имя свойства типа массив Number объекта hObj
|
prp_Array
| int*
| устанавливаемый массив свойства prp_cName
|
arr_Size
| long
| количество элементов массива prp_Array
|
|
Возвращаемое значение
JSP_OK (0) в случае успеха либо JSP_ERROR (-1) в противном случае.
------------------------ Приложение C++ Builder ------------------------
JSP_Start("TRIAL","");
JSP_RegAppFun("void","App_tstObjIntArr","size_t&,char*");
JSP_RET_void App_tstObjIntArr(size_t& hObj,char* prp_cName) { int i,j,*int_lst; long len;
if ((JSP_objGetArrLen(hObj,prp_cName,len)!=JSP_OK) || (len==0)) return;
int_lst=new int[len]; JSP_objGetIntArr(hObj,prp_cName,int_lst);
// Перевернуть массив for (i=0,j=len-1;i<j;i++,j--) { int_lst[i]=int_lst[i]+int_lst[j]; int_lst[j]=int_lst[i]-int_lst[j]; int_lst[i]=int_lst[i]-int_lst[j]; } JSP_objSetIntArr(hObj,prp_cName,int_lst,len);
delete [] int_lst; }
------------------------ Скрипт JS+ ------------------------
var int_lst=new Array(1,2,3); var tst_obj={ intArray: int_lst };
var val_str=tst_obj.intArray.toString();
App_tstObjIntArr(tst_obj,"intArray");
alert( val_str+"\n-\n"+ tst_obj.intArray.toString() );
------------------------ Вывод скрипта JS+ ------------------------
1,2,3 - 3,2,1
------------------------ Приложение Delphi ------------------------
JSP_Start('TRIAL','User=Delphi');
JSP_RegAppFun('','App_tstObjIntArr','size_t&,char*');
procedure App_tstObjIntArr(var hObj:Pointer;prp_cName:pAnsiChar) stdcall; var i,len:LongInt; int_arr:array of integer; begin if ((JSP_objGetArrLen(hObj,prp_cName,len)<>JSP_OK) or (len=0)) then Exit;
SetLength(int_arr,len); JSP_objGetIntArr(hObj,prp_cName,@int_arr[0]);
// Изменить массив for i:=0 to len-1 do int_arr[i]:=int_arr[i]*2; JSP_objSetIntArr(hObj,prp_cName,@int_arr[0],len); end; exports App_tstObjIntArr;
------------------------ Скрипт JS+ ------------------------
var int_lst=new Array(1,2,3); var tst_obj={ intArray: int_lst };
var val_str=tst_obj.intArray.toString();
App_tstObjIntArr(tst_obj,"intArray");
alert( val_str+"\n-\n"+ tst_obj.intArray.toString() );
------------------------ Вывод скрипта JS+ ------------------------
1,2,3 - 2,4,6
Совместимость
C++ Builder/Delphi/Visual C++
|
JS+ | Руководство пользователя
|
|
|