2012-11-08 19 views
9

औरNominalDiffTimeData.Time.Clock में NominalDiffTime प्रदान करने के पीछे तर्क क्या है?क्यों Data.Time.Clock डिफटाइम और नाममात्र डिफटाइम प्रदान करता है?

वर्तमान में, मुझे दोनों की आवश्यकता नहीं दिखाई देती है।

इसके अलावा, मुझे नहीं पता कि NominalDiffTime के लिए diffUTCTime क्यों है, जबकि DiffTime के लिए ऐसा कोई फ़ंक्शन नहीं है।

मेरा मतलब है, ऐसा लगता है कि DiffTime और NominalDiffTime वास्तव में एक दूसरे के लिए 'सममित' नहीं हैं।

शायद इसे समेटने के लिए: उन बीजगणितीय डेटाटाइप के बीच क्या अंतर है?

+1

'डिफटाइम एक वास्तविक समय अवधि है। 'नाममात्र डिफटाइम' में छलांग के सेकंड या यहां तक ​​कि छलांग लग सकते हैं (जैसा कि मैं इसे समझता हूं)। – dflemstr

+1

मुझे संदेह है कि 'डिफटाइम' के लिए 'diffutCTime' क्यों नहीं है क्योंकि भविष्य में लीप सेकंड अप्रत्याशित हैं और भविष्य में तारीखों (एक वर्ष?) से अधिक समय के लिए अंतर की गणना करने का कोई तरीका नहीं है क्योंकि वे अप्रत्याशित हैं केवल अग्रिम में ही घोषणा की। – hammar

उत्तर

8

NominalDiffTime लीप-सेकंड को अनदेखा करता है और आप सुनिश्चित कर सकते हैं कि diffUTCTime 23:00 यूटीसी और 01:00 यूटीसी के बीच अगले दिन हमेशा 2 घंटे होता है, बिना किसी सेकेंड के।

DiffTime के परिणाम अन्य कारकों द्वारा बदला जा सकता है, उदाहरण के लिए, लीप-सेकेंड। इसे स्टॉपवॉच के रूप में मापा जाता है: यदि, कुछ कारणों से, 23:00 यूटीसी और 01:00 यूटीसी के बीच 2 घंटे नहीं है, तो यह प्रकार इसे दिखाएगा।

प्रैक्टिस में, वे अलग नहीं थे।

संपादित करें: उनके पास अलग-अलग उद्देश्यों हैं।

  • NominalDiffTime समय के बीच अंतर की गणना के लिए है।
  • DiffTime मापा समय के लिए है (उदाहरण के लिए स्टॉपवॉच के साथ)।
+3

वे * बहुत * अक्सर * अलग नहीं होते हैं लेकिन वे कभी-कभी भिन्न होते हैं, और कभी-कभी यह अंतर महत्वपूर्ण होता है। –

+0

एचएम, लेकिन मैं एक 'डिफटाइम' कैसे बना सकता हूं जिसमें एक छलांग सेकंड शामिल है? मेरा मतलब है कि मैं यूनिवर्सलटाइम 2012-06-30_23: 00: 00 को यूनिवर्सलटाइम 2012-07-01_01: 00: 00 से घटा नहीं सकता क्योंकि कोई diffUniversalTime नहीं है ... या मैं कर सकता हूं? – maxschlepzig

+1

आप नहीं कर सकते, क्योंकि डिफटाइम समय के बीच अंतर के लिए नहीं है, यह मापा समय के लिए है (उदाहरण के लिए स्टॉपवॉच के साथ)। – matshch

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