मैं एक विधि लिख रहा हूं जो वर्ष को पैरामीटर के रूप में स्वीकार करता है। अर्थात। चार अंकों की संख्या वर्तमान वर्ष की तुलना में बराबर या कम है। कैलेंडर केवल ग्रेगोरियन है (अभी के लिए .. भविष्य के बारे में निश्चित नहीं है) और मुझे निश्चित रूप से बीसी की आवश्यकता नहीं होगी।वर्षों के लिए पैरामीटर प्रकार
मैं किस डेटा प्रकार का उपयोग करने के लिए उपयोग कर रहा हूँ? स्पष्ट समाधान दिनांक समय या Int32 का उपयोग करेंगे:
public void MyFunction(DateTime date)
{
// year to work with: date.Year;
// date.Month, date.Day, etc. is irrelevant and will always be
}
या
public void MyFunction(Int year)
{
if (year > 9999 || otherValidations == false)
{
//throw new Exception...
}
// year to work with: new DateTime(year, 1, 1);
}
मेरे स्वयं के कस्टम डेटा प्रकार वर्ष लेखन से अलग किसी भी अन्य विकल्प?
क्या आप इसके साथ बाद में क्या कर रहे हैं पर निर्भर करता है और क्या बुला रहा है यह। क्या आप इसे एक इंटरफ़ेस के रूप में उजागर कर रहे हैं? स्रोत कहां से आएगा? यदि आप जो कुछ भी कर रहे हैं, उसकी तुलना इसकी तुलना में आपको केवल इंटेल 16 की आवश्यकता है। –
चलो एक पहिया का आविष्कार नहीं करते हैं, मैं सुझाव दूंगा कि इसे सरल रखें और 'int' डेटा प्रकार – sll
में निर्मित * किस कैलेंडर * में * का उपयोग करें? ग्रेगोरियन? हिब्रू? हिजरी? विभिन्न उपयोगकर्ता अलग-अलग स्थानों में विभिन्न कैलेंडर सिस्टम का उपयोग करते हैं; यदि आप चाहते हैं कि आपका सॉफ़्टवेयर उन सभी के द्वारा प्रयोग योग्य हो, तो आपके पास कुछ शोध हो सकता है। –