小编bro*_*179的帖子

何时在Matlab中使用assert()?

由于Matlab被解释,通常会在执行函数签名的函数开头花费大量时间.例如

if nargin ~= 2; error('must provide two input args a and b'); end
if a < 0||a ~=floor(a); error('input arg1 must be positive non-zero integer'); end 
if ~isa(b,'cell') ...
Run Code Online (Sandbox Code Playgroud)

相反,使用Matlab的assert()会更好吗?如果没有,何时适合在Matlab中使用assert()?

有对在生产中使用代码断言的大讨论在这里,但我不能肯定这适用于解释的代码.同样,这里有另一个很好的讨论,我同意@Dan Dyer关于断言表达对当前状态的看法.然而,在这里看一下类似的Python讨论人们说,只使用断言来应对永远不会发生的情况(例如异常情况的异常),这与之前的引用有点矛盾.

也许这更像是一个关于断言在解释语言中扮演的角色的问题,而不是关于Matlab的问题.

matlab assert exception-handling

6
推荐指数
1
解决办法
4196
查看次数

标签 统计

assert ×1

exception-handling ×1

matlab ×1