我有一个基类目列入我typecasted许多不同的子类目并将它传递给子vi。是否有任何方式,通过它我可以找到原种类型的对象的每一个元件阵列?

谢谢...

有帮助吗?

解决方案

为子孙后代,这是crossposted的 熔岩 论坛。用户烟雾探测队,其中一个开发商的LabVIEW的原OO的特点,回答如下:

使用一个动态的分派方法中的每一类是建议的方式处理此,虽然该建议是建立一个方法,这并不管它是什么你想做的。我猜,你在想的一个动态的分派方法,返回的名称或身份的对象,所以你可以说"它是等到这个吗?好吧,那么它必须是这一类的..."然后你做的操作X如果它是这一类。如果你写一个动态的分派方法ActionX.vi和后来复盖它适当,则将保存自己的性能和容易得多的时间用于代码维护的未来。

你也可以使用的更具体的节点测试,如果给定的对象可以是垂头丧气的给定类型--该允许继承测试,而不是名称或身份证比较,只是种类型的等效性。如果更具体的节点返回的一个错误,那么它不是目的类型。

所以你的选择是(按优先顺序):

  • 动态分派方法,并在行动
  • 更具体点做型测试
  • 动态分派方法,返回姓名/身份证之类的对象
  • 获取道路LabVIEW对象。vi(运vi。lib在LabVIEW8.5但是未加入的调色板,直到LabVIEW8.6)

其他提示

NI有一个很好的 LVOOP概述必须阅读,因为OO是以独特的方式实现的。

您是否尝试过'更通用类和'更具体类的功能,在应用程序控制面板上?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top