में ओवरलोड कन्स्ट्रक्टर मुझे वीबीस्क्रिप्ट में कक्षाओं का विस्तार करने का कोई तरीका मिला, लेकिन क्या पैरामीटर में पास करने या कन्स्ट्रक्टर को अधिभारित करने के कोई तरीके हैं? मैं वर्तमान में गुणों को आरंभ करने के लिए एक इनिट फ़ंक्शन का उपयोग कर रहा हूं, लेकिन जब मैं ऑब्जेक्ट बनाता हूं तो ऐसा करने में सक्षम होना चाहता हूं।
यह मेरा नमूना वर्ग है:वीबीस्क्रिप्ट
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
और मैं बनाने यह
Set objTest = New Test
लेकिन इस
Set objTest = New Test(strInitText)
की तरह कुछ करना चाहते हैं यह संभव है, या क्या करता है वस्तु है दो सेटों में बनाया और शुरू किया जाना है?
यह 2011 है और मैं दोनों इसके लिए गुगल हो गए और इसे सीखने में आनंद लिया। मुझे पुरानी वीबीस्क्रिप्ट को वैसे ही रीफैक्टर करना पसंद है जैसा मुझे पुराना 486 चलाना पसंद है। मुझे कोई रास्ता नहीं है। – Chris
आपको '(नया टेस्ट)' कोष्ठक में लपेटना है? आप बस नहीं कर सकते, 'नया टेस्ट (ऐरे()) '? = [ – crush
मैं इसे तुरंत परीक्षण नहीं कर सकता लेकिन जहां तक मुझे याद है कि कोष्ठक की आवश्यकता है। कोई वर्ग कन्स्ट्रक्टर नहीं हैं इसलिए 'नया क्लासनाम (तर्क) 'वीबीस्क्रिप्ट में मान्य वाक्यविन्यास नहीं है। कोष्ठक इसे पार्सर को स्पष्ट करते हैं कि आप 'न्यू क्लासनाम' के परिणाम के लिए तर्क लागू कर रहे हैं। किसी ऑब्जेक्ट पर तर्क लागू करना फ़ंक्शन परिभाषा में डिफ़ॉल्ट रूप से चिह्नित फ़ंक्शन को कॉल करता है। – jammus