火爆登场 发表于 2022-6-12 20:57:56

C++结构体数组变量火山要怎么实现请大神赐教

C++头文件代码如下:
//函数(数据个数,输出,输入a,输入b,输入c)
typedef void(*pPluginFUNC)(int,float*,float*,float*,float*);

typedef struct tagPluginTCalcFuncInfo
{
        unsigned short                        nFuncMark;//函数编号
        pPluginFUNC                        pCallFunc;//函数地址
}PluginTCalcFuncInfo;

typedef BOOL(*pRegisterPluginFUNC)(PluginTCalcFuncInfo**);

#pragma pack(pop)

#ifdef __cplusplus
extern "C"
{
#endif //__cplusplus
        __declspec(dllexport) BOOL RegisterTdxFunc(PluginTCalcFuncInfo** pFun);
#ifdef __cplusplus
}
#endif //__cplusplus

#endifC++源码如下:

void TestPlugin1(int DataLen,float* pfOUT,float* pfINa,float* pfINb,float* pfINc)
{
        for(int i=0;i<DataLen;i++)
                pfOUT=(float) i;
}

void TestPlugin2(int DataLen,float* pfOUT,float* pfINa,float* pfINb,float* pfINc)
{
        for(int i=0;i<DataLen;i++)
        {
                pfOUT=pfINa+pfINb+pfINc;
                pfOUT=pfOUT/3;
        }
}

//加载的函数
PluginTCalcFuncInfo g_CalcFuncSets[] =
{
        {1,(pPluginFUNC)&TestPlugin1},
        {2,(pPluginFUNC)&TestPlugin2},
        {0,NULL},
};

//导出给的注册函数
BOOL RegisterTdxFunc(PluginTCalcFuncInfo** pFun)
{
        if(*pFun==NULL)
        {
                (*pFun)=g_CalcFuncSets;
                return TRUE;
        }
        return FALSE;
}这里PluginTCalcFuncInfo g_CalcFuncSets[] 整个结构体数组在火山里面具体要怎么实现。我用嵌入调用结合实例中结构基础类方式可以声明结构体,但编译后无效。
页: [1]
查看完整版本: C++结构体数组变量火山要怎么实现请大神赐教