主要内容

验证属性和输入值

此示例演示如何验证给定给系统对象的输入和属性值是否正确™ 是有效的。

验证单个属性

要独立于其他属性验证属性值,请使用MATLAB类属性验证。此示例显示如何指定逻辑属性、正整数属性和字符串属性,这些属性必须是三个值之一。

properties UseIncrement(1,1)logical=false WrapValue(1,1){mustBePositive,mustBeInteger}=1 Color(1,1)string{mustBeMember(Color[“红色”,“绿色”,“蓝色”])} =“红色”终止

验证相互依赖的属性

要验证两个或多个相互依赖的属性的值,请使用validatePropertiesImpl. 此示例演示如何编写validatePropertiesImpl要验证逻辑属性(使用增量)是符合事实的以及包装价值大于定期的加薪.

方法(访问=受保护)作用validatePropertiesImpl(obj)如果obj.UseIncrement&&obj.WrapValue>obj.Increment错误(“换行值必须小于增量值”);终止终止终止

验证输入

要验证输入值,请使用ValidateInputSiml此示例演示如何验证第一个输入是否为数值。

方法(访问=受保护)作用ValidateInputSiml(~,x)如果~isnumeric(x)错误(“输入必须是数字”);终止终止终止

完整的课堂示例

此示例是一个完整的系统对象,显示了每种类型的验证语法的示例。

classdefAddOne%ADDONE通过增加输入值来计算输出值%所有属性都出现在属性声明中。%这些属性具有公共访问权限(默认设置)性质使用增量(1,1)逻辑=假WrapValue(1,1){必须为正,必须为正}=10增量(1,1){必须为正,必须为正}= 1终止方法(访问=受保护)作用validatePropertiesImpl(obj)如果obj.UseIncrement&&obj.WrapValue>obj.Increment错误(“换行值必须小于增量值”);终止终止%验证对象的输入作用ValidateInputSiml(~,x)如果~isnumeric(x)错误(“输入必须是数字”);终止终止作用out=STEPIMP(obj,in)如果obj.USE增量输出=输入+obj.增量;其他的out=in+1;终止终止终止终止

另见

|

相关话题