主要内容

错误处理和资源管理

当创建. net应用程序中,这是一个很好的实践,妥善处理运行时错误和管理资源。

错误处理

与托管代码,MATLAB的执行期间发生的任何错误®函数或数据转换期间由标准的。net的异常信号。

像任何其他。net应用程序,应用程序调用一个方法生成的MATLAB编译器SDK™可以捕捉和处理异常处理错误的本地或允许调用方法来抓住它。

为每个实例的错误处理方式。

GetPrimes的例子中,方法本身处理例外。

公共双[]GetPrimes (int n) {MWArray质数=零;MyPrimesClass MyPrimesClass =零;尝试{myPrimesClass = new myPrimesClass ();质数= myPrimesClass.myprimes (n)(双);返回((double []) (MWNumericArray)素数)。ToVector (MWArrayComponent.Real);}(异常交货){控制台。WriteLine(例外:{0},练习);返回新双[0];}}

在下一个示例中,调用的方法myprimes不捕获异常。相反,它的调用方法(即调用的方法调用的方法myprimes)处理异常。

公共双[]GetPrimes (int n) {MWArray质数=零;MyPrimesClass MyPrimesClass =零;尝试{myPrimesClass = new myPrimesClass ();质数= myPrimesClass.myprimes (n)(双);返回((double []) (MWNumericArray)素数)。ToVector (MWArrayComponent.Real);}捕捉(异常e){扔;}}

显式地释放资源

通常,处理从一个方法被调用最后在一个部分试一试- - - - - -最后块。

尝试{/ *分配一个巨大的数组* / MWNumericArray数组= new MWNumericArray (1000、1000);。。(用数组)。最后}{/ *明确处置托管数组及其* / / *本机资源* /如果(零! =数组){array.Dispose ();}}

该声明array.Dispose ()释放分配的内存管理包装器和本机MATLAB数组。

MWArray类提供了两种处理方法:处理和静态方法DisposeArray。的DisposeArray方法是更普遍的,它一个处分MWArray或数组的数组类型MWArray