js向C++传参问题

White-平常 CSDN会员 White-平常 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
小弟在此请教一个问题:js如何向C++的ATL工程传递一个数组?ATL工程中的函数如何声明?

这是ATL工程的代码:

STDMETHODIMP CATLTest::GetArray(VARIANT* SrcArray, LONG iLength, LONG iStart, LONG iStop, VARIANT* DestArray)
{
// TODO: 在此添加实现代码

SAFEARRAY FAR* psa;
SAFEARRAYBOUND rgsaBound[1];

if (!SrcArray || iStop > iLength) {
rgsaBound[0].lLbound = 0;
rgsaBound[0].cElements = 0;

psa = SafeArrayCreate(VT_VARIANT, 1, rgsaBound);
}
else {
--iStop, --iStart;
rgsaBound[0].lLbound = 0;
rgsaBound[0].cElements = iStop - iStart;

psa = SafeArrayCreate(VT_VARIANT, 1, rgsaBound);

long iIndex = 0;
VARIANT TempDt;

TempDt.vt = VT_INT;

for (int i = iStart; i < iStop; ++i) {
TempDt.pdispVal = SrcArray[i].pdispVal;
SafeArrayPutElement(psa, &iIndex, &TempDt);
iIndex++;
}

}

//返回一个安全数组
V_VT(DestArray) = VT_ARRAY | VT_VARIANT;

V_ARRAY(DestArray) = psa;

return S_OK;
}

这是javaScript的代码:
function GetArray(){
let para1 = document.getElementById("txtArray").value;
let para2 = document.getElementById("txtStart").value;
let para3 = document.getElementById("txtEnd").value;

let arrString = para1.split(" ");
let arrInt = new Array(5);

for (let index = 0; index < arrString.length; index++) {
arrInt[index] = parseInt(arrString[index]);
}

let iStart = parseInt(para2);
let iEnd = parseInt(para3);

console.log(arrInt);

if(iStart && iEnd){
let result = new VBArray(cpp_object.GetArray(arrInt, arrInt.length, iStart, iEnd)).toArray();
console.log(result);]
}
}
...全文

相关推荐

基于zxing识别条形码+传参webview入库及结算

webview代码是PHP的,接口已经失效,感兴趣的自己写,目前部署手机后可以识别条形码,并把条形码用吐司的形式展现出来

我心飞扬不飘荡

Qt结合QWebEngineView嵌入百度地图:从环境配置到定位实现全指南

在桌面应用开发中,地图展示与定位功能是设备监控、轨迹回放等场景的常见需求。传统方案往往依赖特定操作系统的原生SDK,而Web地图API凭借跨平台、更新快、生态成熟等优势,逐渐成为技术选型的重要方向。Qt作为跨平台C++框架,其QWebEngine模块基于Chromium内核,能够直接承载Web页面,为集成百度地图等JavaScript地图库提供了可行的技术路径。通过本地HTML加载地图API,再借助runJavaScript或QWebChannel实现C++与JavaScript的双向通信,即可完成经纬度输

蝨孨槑黽

C++关于构造函数可向父类或者本类传参的讲解

今天小编就为大家分享一篇关于C++关于构造函数可向父类或者本类传参的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

weixin_38560797

c++开发activex控件和js传参,js调用ocx控件接口函数的代码(

vs2010开发activex(MFC)控件/ie插件(一),测试ocx控件加载 vs2010开发activex(MFC)控件/ie插件(二),js传参数 vs2010开发activex(MFC)控件/ie插件(三),js调用ocx控件的接口函数

SingleOneMan

易语言源码易语言与网络数据交互

易语言源码易语言与网络数据交互

zz_ll9023
评论 1
收藏 已收藏
分享
返回顶部
White-平常 CSDN会员
JavaScript 87,984 成员 224,681 内容