2017-10-05 11 views
6

मैं इस कोड है। यह कैसे सकारात्मक है?नई अशक्त लौटने ऑपरेटर सी #

यहाँ मैं किस बारे में बात कर रहा हूँ का एक प्रिंट स्क्रीन है:

enter image description here

मैं भी तत्काल खिड़कियों मैं यह मिल गया के साथ प्रयास करें:

enter image description here

p im के बाद से शून्य नहीं हो सकता इसका एक नया उदाहरण बनाते हुए इसकी सभी संपत्तियां शून्य नहीं हैं। मैंने परियोजना को साफ करने की कोशिश की, विंडोज़ को पुनरारंभ करें, व्यवस्थापक के रूप में खुला दृश्य स्टूडियो खोलें और कुछ भी नहीं हुआ।

कोई विचार क्यों?

एप्लिकेशन .NET 4.0, विजुअल स्टूडियो 2017 v15.2 (26430.13) पर चल रहा है।

+1

यह शायद आपका डीबगर है। क्या आप ऑप्टिमाइज़ेशन (यानी रिलीज मोड) पर डिबगिंग कर रहे हैं? सिद्धांत का परीक्षण करने के लिए बस एक शून्य जांच जोड़ें और एक नया 'ArgumentNullException' फेंक दें, अगर आपको डिबगिंग के दौरान अपवाद मिलता है तो यह शून्य है (* जो मुझे संदेह है क्योंकि यह संभव नहीं होना चाहिए *) और यदि नहीं तो यह आपका डीबगर है। – Igor

+0

@ इगोर नो, डीबग मोड में im। –

+4

क्या 'पथ' वर्ग' ToString' को ओवरराइड करता है, या क्या इसे "डीबगर" से शुरू होने वाले नाम के साथ किसी भी विशेषता के साथ सजाया गया है? – Amy

उत्तर

10

आपका चर शून्य नहीं है।

डिफगर डिफ़ॉल्ट रूप से ToString() विधि की सामग्री को प्रदर्शित करने का प्रयास करते समय ओवरलोड हो जाता है। इस मामले में यह प्रदर्शित (प्रोपेक्टिव) उरी या FtpUrl मान जो शून्य है।

जब आप इसे होवर करते हैं तो अपने चर पर छोटे त्रिकोण पर क्लिक करने का प्रयास करें, तो आप चर की पूर्ण सामग्री देखेंगे।

+3

अच्छा जवाब, लेकिन एक quibble: डीबगर कॉल करने के लिए 'ToString() 'कॉल करता है चाहे यह ओवरराइड किया गया हो, * जब तक *' DebuggerDisplayAttribute' प्रकार पर निर्दिष्ट नहीं है। – Amy

संबंधित मुद्दे