डेल्फी में टाइप कांस्टेंट को समझना

कब डेल्फी एक इवेंट हैंडलर को आमंत्रित करता है, स्थानीय चर के पुराने मूल्यों को मिटा दिया जाता है। अगर हम बटन को कितनी बार क्लिक करना चाहते हैं, तो हम ट्रैक करना चाहते हैं? हम एक इकाई-स्तर चर का उपयोग करके मूल्यों को बनाए रख सकते हैं, लेकिन आमतौर पर इकाई-स्तरीय चर को केवल जानकारी साझा करने के लिए आरक्षित करना एक अच्छा विचार है। हमें जो चाहिए वह आमतौर पर डेल्फी में स्थिर चर या टाइप किए गए स्थिरांक कहलाते हैं।

चर या अचर

टाइप किए गए स्थिरांक की तुलना प्रारंभिक चर-चर से की जा सकती है, जिनके मान उनके ब्लॉक (आमतौर पर ईवेंट हैंडलर) में प्रवेश पर परिभाषित होते हैं। इस तरह के एक वेरिएबल को इनिशियलाइज़ तभी किया जाता है जब प्रोग्राम चलने लगे। उसके बाद, टाइप किए गए स्थिर का मान उनकी प्रक्रियाओं के लिए लगातार कॉल के बीच बना रहता है।

टाइप किए गए स्थिरांक का उपयोग स्वचालित रूप से आरंभिक चर को लागू करने का एक बहुत ही साफ तरीका है। टाइप किए गए स्थिरांक के बिना इन चरों को लागू करने के लिए, हमें एक आरंभीकरण अनुभाग बनाना होगा जो प्रत्येक आरम्भिक चर का मान निर्धारित करे।

वैरिएबल टाइप कांस्टेंट

यद्यपि हम एक प्रक्रिया के आधार अनुभाग में टाइप किए गए स्थिरांक की घोषणा करते हैं, यह याद रखना महत्वपूर्ण है कि वे स्थिरांक नहीं हैं। अपने आवेदन के किसी भी बिंदु पर, यदि आपके पास टाइप किए गए स्थिरांक के लिए पहचानकर्ता तक पहुंच है, तो आप इसके मूल्य को संशोधित करने में सक्षम होंगे।

instagram viewer

टाइप किए गए स्थिरांक को काम पर देखने के लिए, खाली फॉर्म पर एक बटन लगाएं, और निम्न कोड को ऑनक्लिक इवेंट हैंडलर को असाइन करें:

प्रक्रिया TForm1.Button1 क्लिक करें (प्रेषक: TObject); स्थिरांक क्लिक: इंटेगर = 1; // सच्चा स्थिर नहींशुरू Form1. अनुकूलन: = IntToStr (क्लिक); क्लिक: = क्लिक + 1; समाप्त; 

ध्यान दें कि हर बार जब आप बटन पर क्लिक करते हैं, तो तेजी से कैप्शन बढ़ाते हैं।
अब निम्नलिखित कोड का प्रयास करें:

प्रक्रिया TForm1.Button1 क्लिक करें (प्रेषक: TObject); वर क्लिक्स: पूर्णांक; शुरू Form1. अनुकूलन: = IntToStr (क्लिक); क्लिक: = क्लिक + 1; समाप्त; 

अब हम क्लिक्स काउंटर के लिए एक uninitialized वैरिएबल का उपयोग कर रहे हैं। बटन पर क्लिक करने के बाद फॉर्म कैप्शन में अजीब मूल्य देखें।

लगातार टाइप किए गए कॉन्स्टेंट

आपको सहमत होना होगा कि परिवर्तनीय स्थिरांक का विचार थोड़ा अजीब लगता है। डेल्फी बोरलैंड के 32 बिट संस्करणों में उनके उपयोग को हतोत्साहित करने का फैसला किया, लेकिन डेल्फी 1 विरासत कोड के लिए उनका समर्थन करें।

हम प्रोजेक्ट विकल्प संवाद बॉक्स के कंपाइलर पृष्ठ पर असाइन किए गए टाइप किए गए स्थिरांक को सक्षम या अक्षम कर सकते हैं।

यदि आपने किसी दिए गए प्रोजेक्ट के लिए असाइन किए गए टाइप किए गए स्थिरांक को अक्षम कर दिया है, तो जब आप पिछले कोड को संकलित करने का प्रयास करेंगे तो डेल्फी आपको 'लेफ्ट साइड को' संकलन पर त्रुटि के लिए असाइन नहीं किया जा सकता है। हालाँकि, आप घोषणा करके स्थिर टाइप किए गए स्थिरांक बना सकते हैं:

{$ जे +}स्थिरांक क्लिक: इंटेगर = 1; {$ जम्मू}

इसलिए, पहला उदाहरण कोड जैसा दिखता है:

प्रक्रिया TForm1.Button1 क्लिक करें (प्रेषक: TObject); स्थिरांक{$ जे +} क्लिक: इंटेगर = 1; // सच्चा स्थिर नहीं{$ जम्मू}शुरू Form1. अनुकूलन: = IntToStr (क्लिक); क्लिक: = क्लिक + 1; समाप्त; 

निष्कर्ष

यह आपको तय करना है कि आप टाइप कांस्टेबल को असाइन करना चाहते हैं या नहीं। यहां महत्वपूर्ण बात यह है कि काउंटरों के लिए आदर्श के अलावा, टाइप किए गए स्थिरांक बनाने के लिए आदर्श हैं वैकल्पिक रूप से दृश्यमान या अदृश्य घटक, या हम उन्हें किसी भी बूलियन के बीच स्विच करने के लिए उपयोग कर सकते हैं गुण। टाइप किए गए स्थिरांक का उपयोग टीटीमर के इवेंट हैंडलर के अंदर भी किया जा सकता है ताकि इस बात पर ध्यान दिया जा सके कि कितनी बार ट्रिगर किया गया है।

instagram story viewer