क्या एक ही प्रकार के टाइपपीफ के लिए स्पष्ट कलाकारों को लागू करने का कोई तरीका है? मुझे utf8 से निपटना है और कभी-कभी मैं चरित्र गणना और बाइट गिनती के सूचकांक के साथ भ्रमित हो जाता हूं।सी में मजबूत प्रकार की जांच लागू करें (टाइपपीफ के लिए सख्तता टाइप करें)
typedef unsigned int char_idx_t;
typedef unsigned int byte_idx_t;
अलावा है कि आप उन दोनों के बीच एक स्पष्ट कलाकारों की जरूरत है:: तो यह कुछ typedefs करना अच्छा हो
char_idx_t a = 0;
byte_idx_t b;
b = a; // compile warning
b = (byte_idx_t) a; // ok
मुझे पता है कि इस तरह के एक सुविधा सी में मौजूद नहीं है, लेकिन शायद आप एक चाल या एक कंपाइलर एक्सटेंशन (बेहतर जीसीसी) जानते हैं जो ऐसा करता है।
संपादित मैं अभी भी नहीं वास्तव में सामान्य रूप में हंगेरी संकेतन तरह से करते हैं। मैं परियोजना कोडिंग सम्मेलनों की वजह से इस समस्या के लिए इसका उपयोग नहीं कर सका, लेकिन मैंने इसे अब इसी तरह के मामले में इस्तेमाल किया, जहां प्रकार समान हैं और अर्थ बहुत समान हैं। और मुझे स्वीकार करना है: यह मदद करता है। मैं कभी भी "इंट" के साथ हर इंटीजर की घोषणा नहीं करता हूं, लेकिन जोएल के उदाहरण में अतिव्यापी प्रकार के उदाहरण के रूप में, यह जीवन की बचत हो सकता है।
[जोएल] (http://www.joelonsoftware.com/) नाम से [एक और बहुत अच्छा लेख है (हालांकि मैं गोटो पर प्रतिबंध लगाने के लिए सहमत नहीं हूं :)) [गलत कोड देखो गलत] बनाना (http://www.joelonsoftware.com/articles/Wrong.html)। मुझे लगता है कि अगर यह सीधा कनेक्शन नहीं है तो भी यह आपके प्रश्न से बहुत संबंधित है। – Ilya
उस लेख में सबसे दिलचस्प 'और महत्वपूर्ण बात, आईएमएचओ, हंगेरियन नोटेशन के इतिहास के बारे में कुछ है। Veeery दिलचस्प ... – Noein