Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从C++;基于VB.NET中DLL文件的标准库_Vb.net - Fatal编程技术网

如何从C++;基于VB.NET中DLL文件的标准库

如何从C++;基于VB.NET中DLL文件的标准库,vb.net,Vb.net,我有一个DLL文件(用C++编写),ReadTemp函数返回两个整数(文档说明,该函数返回一个由两个整数组成的列表) 我不知道如何从DLL文件接收VB.net中的对象 这是我的密码: Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click TextBox1.Text = ReadTemp(2) End Sub 从以下代码调用DLL: Private Declare Functio

我有一个DLL文件(用C++编写),ReadTemp函数返回两个整数(文档说明,该函数返回一个由两个整数组成的列表)

我不知道如何从DLL文件接收VB.net中的对象

这是我的密码:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    TextBox1.Text = ReadTemp(2)
End Sub
从以下代码调用DLL:

Private Declare Function ReportSN Lib "VCDLL.dll" () As Int32
Private Declare Function ReadTemp Lib "VCDLL.dll" (ByVal SN As Int32) As Single
编辑:

添加了DLL文件中的C++代码:

list<float> ReadTemp(int SN) {

    list <float> temp(2);

    if () // Test if connection to COM-port is good
    {
        for () // Runs only 2 times
        {   
        temp.push_back(fVal);
        }
    }
    else
    {   
        // Ugly error message
        temp.push_back(-999);
        temp.push_back(-999);
        return temp;
    }
    return temp;
}
list ReadTemp(内部序列号){
临时名单(2);
if()//测试与COM端口的连接是否良好
{
for()//只运行2次
{   
回推温度(fVal);
}
}
其他的
{   
//丑陋的错误消息
温度推回(-999);
温度推回(-999);
返回温度;
}
返回温度;
}

请在C++中显示函数的签名。@ gSerg我已经添加了C++函数,可能的副本不是“多输出”,这是C++标准库中的一个对象。请参阅链接以了解解决方法。@GSerg我不确定我是否完全理解该链接如何帮助我?我需要在C++代码中更改以接收多个输出?最好避免在C++中向VB….NET返回一个对象…