Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

WD et POO

2 réponses
Avatar
Daireaux Jean-Baptiste
En cherchant très fort dans la doc windev, j'ai trouvé que l'on peut
obtenir la classe d'un objet grâce à la propriété '..class'

Mais je n'est pas trouvé comment vérifier si la classe de l'objet hérite
bien d'une autre classe (une sorte de 'isa' ou de 'a_pour_parent').

y a t-il un moyen ?


J.B.D.

2 réponses

Avatar
Antoine
Une idée : dans chaque classe tu te crées une méthode virtuelle qui te
renvoie son nom, et une autre qui renvoie son ancêtre en appelant la méthode
de son ancêtre.

exemple :

fonction virtuelle LeNomDeMaClasse:fMaClasse()
renvoyer "LeNomDeMaClasse"

fonction virtuelle LeNomDeMaClasse:fMonAncetre()
renvoyer Ancêtre:fMaClasse()

Si tu trouves une bonne méthode, tu peux nous la poster ensuite stp ? Merci
!

------------

Tant que j'y suis, un autre truc bon à savoir pour la programmation objet en
Windev

objet >> désigne l'objet lui-même (équivaut à "self" ou "this")

Par exemple :
fonction LeNomDeMaClasse:fImprimer()
LaClasseGlobaleDimpression:pAjouterAuSpool(objet) >> la méthode passe
son propre objet en paramètre

------------

Cordialement,

Antoine




"Daireaux Jean-Baptiste" a écrit
dans le message de news: 488f1df1$0$860$
En cherchant très fort dans la doc windev, j'ai trouvé que l'on peut
obtenir la classe d'un objet grâce à la propriété '..class'

Mais je n'est pas trouvé comment vérifier si la classe de l'objet hérite
bien d'une autre classe (une sorte de 'isa' ou de 'a_pour_parent').

y a t-il un moyen ?


J.B.D.


Avatar
Daireaux Jean-Baptiste
Antoine a écrit :
> "Daireaux Jean-Baptiste" a
écrit
> dans le message de news: 488f1df1$0$860$
>> En cherchant très fort dans la doc windev, j'ai trouvé que l'on peut
>> obtenir la classe d'un objet grâce à la propriété '..class'
>>
>> Mais je n'est pas trouvé comment vérifier si la classe de l'objet
hérite
>> bien d'une autre classe (une sorte de 'isa' ou de 'a_pour_parent').
>>
>> y a t-il un moyen ?
>>
>>
>> J.B.D.
>
>
Une idée : dans chaque classe tu te crées une méthode virtuelle qui te
renvoie son nom, et une autre qui renvoie son ancêtre en appelant la méthode
de son ancêtre.

exemple :

fonction virtuelle LeNomDeMaClasse:fMaClasse()
renvoyer "LeNomDeMaClasse"

fonction virtuelle LeNomDeMaClasse:fMonAncetre()
renvoyer Ancêtre:fMaClasse()

Si tu trouves une bonne méthode, tu peux nous la poster ensuite stp ? Merci
!

------------

Tant que j'y suis, un autre truc bon à savoir pour la programmation objet en
Windev

objet >> désigne l'objet lui-même (équivaut à "self" ou "this")

Par exemple :
fonction LeNomDeMaClasse:fImprimer()
LaClasseGlobaleDimpression:pAjouterAuSpool(objet) >> la méthode passe
son propre objet en paramètre

------------

Cordialement,

Antoine




Merci pour ton idée, mais elle ne pourra pas s'appliquer à mon cas.
J'avais besoin de savoir si un objet que je reçoit est d'une classe qui
hérite de ma classe. Sachant que je ne connais pas toute les classes qui
sont ou seront conçu en héritant de ma classe. c'est pour circonvenir au
manque de structure de données fournis par windev (liste, dictionnaire,
pile, ...) qui sont essentielle à un développement correct et rapide
(marre de devoir refaire la roue à chaque fois)

J.B.D.