Pour la postérité, ceci a été croisé avec les forums LAVA. L'utilisateur Aristos file d'attente, l'un des développeurs de natifs fonctionnalités OO de LabVIEW, a répondu ce qui suit:
En utilisant une méthode de répartition dynamique dans toutes les classes est la méthode recommandée pour manipuler ce, bien que la recommandation est de créer une méthode cela fait tout ce que vous essayez de faire. Je suppose que vous pensez à une méthode de répartition dynamique qui retourne un nom ou un ID de l'objet afin que vous puissiez dire: «Est-ce égal à cela? Ok, alors ce doit être cette classe ...» et vous faites l'action X si c'est cette classe. Si vous écrivez une méthode de répartition dynamique ActionX.vi et que vous la remplacez de manière appropriée, vous économiserez sur les performances et vous aurez plus de facilité pour la maintenance du code dans le futur. Vous pouvez également utiliser le noeud To More Specific pour tester si un objet donné peut être converti en un type donné - ceci permet de tester l'héritage par opposition à la comparaison de nom ou d'ID qui ne fait que l'équivalence de type. Si le nœud To More Specific renvoie une erreur, il ne s'agit pas du type de destination.
Ainsi, vos options sont (par ordre de préférence):
méthode de répartition dynamique
- qui fait l'action
- Pour plus nœud spécifique pour faire des tests de type
- méthode de répartition dynamique qui retourne le nom/ID de la classe de l'objet
- Get chemin de LabVIEW Object.vi (livré en vi.lib dans LabVIEW 8.5 mais pas ajoutées aux palettes jusqu'à ce que LabVIEW 8,6)
En fait, j'ai besoin d'une méthode pour identifier la classe enfant à laquelle elle appartient. Je ne veux pas le convertir. – Manoj