读书人

vb+matlab混合编程数组参数传递的有关

发布时间: 2012-03-13 11:21:11 作者: rapoo

vb+matlab混合编程数组参数传递的问题
用vb调用MATLAB生成的dll计算,捣鼓了很久,终于只剩下最后一个小问题了。单个的数可以传递给vb,但计算结果数据较多,需以矩阵形式传出来,而矩阵怎么也不能传递给vb,要么是空的,要么是0,不知道是为什么?请大家指教啊。代码如下:
MATLAB的m文件:
function [c]=myplot(a,b)
i=0:0.1:20;
c(1)=a(1)+a(2)+b;
c(2)=b;
plot(i,a(1)*sin(i)+a(2)*cos(i));


VB的相关语句:
Private theMagic As myplot.myplotclass 'magic object instance
Dim c(2) As Variant
Set theMagic = New myplot.myplotclass
a(0) = Val(Text1.Text)
a(1) = Val(Text2.Text)
b = 3
Call theMagic.myplot(1, c, a, b)
Text3.Text = c(1)
Text4.Text = c(2)

运行结果:可以画图,但Text3、Text4为空白。

[解决办法]
矩阵计算要用循环 把数据导入

读书人网 >VB

热点推荐