首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

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

2012-03-13 
vb+matlab混合编程数组参数传递的问题用vb调用MATLAB生成的dll计算,捣鼓了很久,终于只剩下最后一个小问题

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为空白。

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

热点排行