本帖最后由 littlestupid 于 2020-9-16 17:47 编辑 ! {7 c3 v! w& ^+ G) _
9 R3 F! u( a* i' P f+ t$ `0 z0 a" Z
版本信息如下:5 m7 P& s+ Y$ l' K
1)Visual Studio 版本:Microsoft Visual Studio Community 2019' P# x2 t6 {1 @/ r) ^$ A5 `
2)MATLAB版本:2017a 7 N# m; N5 v8 y7 I2 M ?1 L8 v; i( w$ H+ v+ ^2 Q3 j
遇到的问题:5 k; _' e' H2 L' I" Y/ Z
1)在MATLAB中调用C#生成的dll文件时,MATLAB报错:“MathWorks.MATLAB.NET.Arrays.MWNumericArray”的类型初始值设定项引发异常。如图1所示。 + ]: l* @" k3 C* ~5 t A1 x( {5 u, X8 y, Z5 l
2)MATLAB中的调用代码很简单,如图2所示。" G$ J+ t% g3 a6 a+ k
3 B, L3 k' a; L, x3)同样的调用在VS中写出来是没有问题的,可以顺利运行,代码如图3所示。/ W+ E" H8 G8 K+ f
. d" X" S. B U* e( `4)与网上大多数人所说的问题类似但不太一样,其他人的这个报错多是出现在C#调用MATLAB生成的dll时,且一般在实例化MathWorks.MATLAB.NET. Arrays类时出现,但我在VS中实例化该类时的代码均可以顺利运行,这点很奇怪。0 N. B( ^, X& J. R( _' p9 M4 ]
; h! y! F0 ^- q! b9 f" v5)图2 和 图3的代码实现的功能一样,仅运行环境不一样,但在MATLAB环境下就是会报1)中所述错误。 0 d8 w# L& J' m. p0 \' R6 B- S8 z
有人遇到过类似问题吗?有没有什么解决方案?& f# R# Z) J( O y, p, l