यदि एक प्रकार एक स्ट्रेट या वर्ग है, तो प्रोग्राम को कैसे जांचें?
< Div class = "post-text" itemprop = "text">
का प्रयोग करें:
< पी> या तो इस तरह का प्रयोग करें:यह एक मूल्य इंगित करता है कि टाइप एक मान प्रकार है।
typeof (Foo) .इसवल्यूए टाइप
या इस तरह निष्पादन समय पर:
< कोड> फू इंस्टेंस। गेटटाइप ()। आईएसवैल्यू टाइप
इसके विपरीत, एक संपत्ति भी है (जिसे आइररिफर टाइप
मेरी राय में, लेकिन कोई बात नहीं कहा जाना चाहिए था) जो आपके परीक्षण के लिए परीक्षण के आधार पर आपके उपयोग के लिए अधिक उपयुक्त हो या हो सकता है।
कोड हमेशा बूलियन निगमन के बिना बेहतर पढ़ता है, इसलिए जो भी आपके कोड की पठनीयता में मदद करता है, उसका उपयोग करें।
जैसा कि स्टीफन नीचे की ओर इंगित करता है, ठीक से उसकी पहचान करने के लिए स्ट्रैक्टस आपको enum
की बात करते समय झूठी सकारात्मकता से बचने के लिए सावधान रहना चाहिए। एक enum
एक मान का प्रकार है, इसलिए IsValueType
संपत्ति true
के लिए enums
और structs वापस आ जाएगी
।
अतः यदि आप वास्तव में structs
की तलाश में हैं और न सिर्फ सामान्य मानों के लिए आपको ऐसा करना होगा:
प्रकार fooType = fooInstance .GetType (); बूलियन isstruct = fooType.IsValueType और amp; amp; ! FooType.IsEnum;
No comments:
Post a Comment