我有一个基类对象数组,我将许多不同的子类对象类型转换到这个数组中,并将其传递给sub。有什么方法可以让我找出数组中每个元素的对象的原始类型吗?
谢谢..。
发布于 2008-09-30 20:23:28
对于后人来说,这是交叉发布到LAVA论坛。用户Aristos Queue,LabVIEW原生OO特性的开发者之一,回答了以下问题:
建议在每个类中使用动态分派方法来处理此问题,尽管建议您创建一个方法来执行您想要做的任何事情。我猜您正在考虑一个动态分派方法,它返回对象的名称或ID,这样您就可以说,“它等于这个吗?好的,那么它一定是这个类……”然后,如果是那个类,则执行Action X。如果您编写了一个动态分派方法ActionX.vi,然后适当地覆盖它,那么您将节省自己的性能,并在将来更容易地进行代码维护。
您还可以使用To更具体的节点来测试给定对象是否可以向下转换为给定类型--这允许进行继承测试,而不是只进行类型等价的名称或ID比较。如果To更具体的节点返回错误,则它不是目标类型。
因此,您的选项是(按偏好顺序):
发布于 2008-09-26 15:14:57
由于OO是以一种独特的方式为LabVIEW实现的,所以NI有一个很好的overview of LVOOP,它是必须阅读的。
你试过在应用程序控制调色板上使用'to more generic class‘和'to more specific class’函数吗?
https://stackoverflow.com/questions/138624
复制相似问题