matlab 违反某些条件时阻止对象创建

vm0i2vca  于 2022-11-24  发布在  Matlab
关注(0)|答案(1)|浏览(119)

在一个脚本中,我想创建一个类的对象,只有当所有的构造函数输入都满足一些条件时。所有的检查都嵌入在构造函数本身中。问题是当:

myObj = myClass(input1,input2,...);

即使输入不满足相对条件,对象最终仍会创建为空属性。
在建构函式中插入下列程式码:

if nargout == 0
   clear obj;
end

防止创建对象,但只有当输出被赋值给ans变量时,否则会出现错误。
有没有一种方法可以在不直接向脚本中添加一些代码(例如使用try)的情况下获得类似的结果?

72qzrwbm

72qzrwbm1#

如果构造函数抛出错误,则不会创建任何对象。使用error。如果愿意,可以在构造函数调用周围放置一个try/catch块。
AFAIK不可能让构造函数正常返回但不产生对象。它的输出会被赋什么?

相关问题