बगर - VB.NET क्लासेस को आयात करना




विजुअल स्टूडियो 2010 (4)

दरअसल, वह समारोह उपलब्ध है क्योंकि यह एक साझा समारोह है। यदि आप साझा किए गए संशोधक को निकालने के लिए थे, तो आपको इसे एक्सेस करने के लिए अभी भी क्लास का एक उदाहरण बनाना होगा।

डिफ़ॉल्ट रूप से एक वर्ग के भीतर सभी चर और सभी कार्यों तक पहुंच प्राप्त करने के लिए, आप इसे प्राप्त करना चाहते हैं।

एक क्लास को आयात करने के बारे में मेरा ज्ञान मूल रूप से इसका सीधे संदर्भ लिख रहा है, इसका उपयोग करने के लिए किसी प्रकार का कोई भी उदाहरण नहीं बना रहा है

स्पष्टता के लिए संपादित करें: लिंक्स में वीबी विशिष्ट लिंक हैं, इस प्रकार, VB.NET से संबंधित इस की कार्यक्षमता को समझाते हुए

मैंने कुछ कोड देखा है जहां क्लास आयात किया जाता है, एक नेमस्पेस के बजाय, सभी स्थिर सदस्य / उस वर्ग के तरीकों को उपलब्ध कराना क्या यह VB की एक विशेषता है? या अन्य भाषाओं को भी ऐसा करते हैं?

TestClass.vb

public class TestClass
    public shared function Somefunc() as Boolean
        return true
    end function
end class

MainClass.vb

imports TestClass

public class MainClass
    public sub Main()
        Somefunc()
    end sub
end class

ये फ़ाइलें App_Code निर्देशिका में हैं। बस उत्सुक है, क्योंकि मैंने इससे पहले कभी नहीं सोचा था, और न ही मैंने इसके बारे में कहीं भी पढ़ा है


हां, यह एक Visual Basic भाषा सुविधा है जब आप उपनाम बना सकते हैं, तो सी # के उपयोग के वक्तव्य का उपयोग करते हुए , ऐसा नहीं लगता है कि आप एक साझा वर्ग को दायरे में आयात कर सकते हैं ईमानदार होने के लिए, मैंने कभी इसे एक विरासत प्रोजेक्ट में उपयोग किया है जो पहले से इसका उपयोग कर चुका था मुझे कुछ मान दिखाई पड़ता है, लेकिन मुझे डर है कि आपके कोड की भावी रखरखाव के लिए अच्छे से अधिक नुकसान हो सकता है।


रुको रुको रुको....

मुझे आज सुबह ही पता चला कि हम किसी भी वर्ग के अंदर सभी वस्तुओं (वर्ग-एस) को प्राप्त कर सकते हैं, जिसे इस पद्धति / फ़ंक्शन का उपयोग करने के लिए उनके संदर्भ की आवश्यकता होती है;

Protected Overrides Sub Finalize()
    MyBase.Finalize()
End Sub

इन कारणों में से एक यह है कि इंस्टालेशन के लिए विज़ुअल बेसिक 6.0 का ग्लोबल मल्टि यूज़ विकल्प का अनुकरण करना है। विजुअल बेसिक 6.0 में डीएलएल सीमा पर मॉड्यूल को सार्वजनिक करने की क्षमता नहीं होती है। इसके बजाय आप GlobalMultiUse लिए GlobalMultiUse प्रॉपर्टी सेट करते हैं। इसका प्रयोग मुख्य रूप से उपयोगिता वर्गों के लिए होता है, जैसे एक वर्ग जो कि गणित कार्यों की एक श्रृंखला का निर्यात करता है।

हर बार जब आप GlobalMultiUse Instancing साथ क्लास पर एक GlobalMultiUse Instancing या फंक्शन कॉल GlobalMultiUse Instancing , तो विज़ुअल बेसिक 6.0 फ़ंक्शन को कॉल करने से पहले दृश्यों के पीछे एक क्लास को पेश करता है।

यह सभी फायदे और नुकसान के साथ वैश्विक कार्यों / चर उत्पन्न करने के लिए दुर्व्यवहार किया जा सकता है।







import