Les constructeurs de surcharge dans VBScript
J'ai trouvé un moyen d'étendre des classes en VBScript, mais est-il possible de passer des paramètres ou la surcharge du constructeur? Je suis actuellement en utilisant une fonction Init pour initialiser les propriétés, mais j'aimerais être capable de faire cela quand je crée l'objet.
C'est mon exemple de classe:
Class Test
Private strText
Public Property Get Text
Text = strText
End Property
Public Property Let Text(strIn)
strText = strIn
End Property
Private Sub Class_Initialize()
Init
End Sub
Private Sub Class_Terminate()
End Sub
Private Function Init
strText = "Start Text"
End Function
End Class
Et j'ai créer il
Set objTest = New Test
Mais voudrais faire quelque chose comme ceci
Set objTest = New Test(strInitText)
Est-ce possible, ou est-ce l'objet doit être créé et initialisé dans deux setps?
source d'informationauteur Tester101
Vous devez vous connecter pour publier un commentaire.
Juste de modifier légèrement sur svinto de la méthode...
Est de savoir comment je le fais. Malheureusement, pas de surcharge.
[modifier]
Mais si vous avez vraiment envie de vous pourriez faire quelque chose comme ça...
Qui donne les constructeurs...
lequel vous pouvez appeler:
Peu de douleur.
Vous pouvez contourner le problème en ayant votre fonction Init retour de l'objet lui-même...
Vous devez procéder en deux étapes. VB Script ne prend pas en charge la surcharge de sorte que vous ne pouvez pas modifier le constructeur par défaut avec de nouveaux paramètres. En va de même pour Vb6
Un peu hackish, pour sûr, mais quand j'ai besoin varargs dans les appels, l'un de mes paramètres je passe comme un tableau, c'est à dire