自适应VI可自动适应输入的类。自适应VI调用类A方法,如果非相关类与类A方法的名称、连线板模式和接线端方向相同,那么此VI可接受该类的数据。自适应VI将对类A方法的调用替换为对输入类中公共方法(如有)的调用,从而实现自适应输入类。

动态分配VI相比,自适应VI在适应类输入时更加灵活。“动态分配”VI只接受自有类或子孙类的数据。自适应VI也可以接受不相关类的数据。

自适应VI的自适应能力通过方法名称、连线板模式和接线端方向来定义方法调用的接口。自适应VI接受满足方法调用接口的任何类的数据。可以使用一个自适应VI处理多个不相关类的数据,或在一个类上实现不同自适应VI的多种接口。

在下图中,Read Sensor Data.vim调用Light Sensor.lvclassFilter.vi方法,该方法与Sound Sensor.lvclass没有共同的祖先类。如果Sound Sensor.lvclass拥有与Filter.vi同名的公共方法、连线板模式和接线端方向,则Read Sensor Data.vim将自动适应Sound Sensor.lvclass

关于使用自适应VI定义方法调用接口的范例,见labview\examples\Malleable VIs\Class Adaptation\Malleable VIs - Class Adaptation.lvproj

相关信息

对不同数据类型使用自适应VI

在自适应VI和多态VI间进行选择