typedefs
के लिए दृढ़ता से टाइप नहीं किया जा रहा है? क्या कोई लाभ है जिसे मैं नहीं देख सकता या पिछड़ा संगतता के कारण है? इस उदाहरण देखें:टाइपपीफ को दृढ़ता से टाइप क्यों नहीं किया जाता है?
typedef int Velocity;
void foo(Velocity v) {
//do anything;
}
int main() {
int i=4;
foo(i); //Should result in compile error if strongly typed.
return 0;
}
मैं एक मजबूत टाइप डेटाप्रकार प्राप्त करने के लिए समाधान के लिए पूछ नहीं कर रहा हूँ, लेकिन केवल जानना चाहता है कि मानक typedefs
की जरूरत नहीं है दृढ़ता से टाइप किया जा करना चाहते हैं?
धन्यवाद।
क्योंकि सी उन लोगों के लिए एक भाषा है जो चीजें प्राप्त करना चाहते हैं, न कि उन लोगों के लिए जो सार प्रकार प्रणालियों की गणितीय सौंदर्य पर विचार करना चाहते हैं। (जो कोई भी दोनों गतिविधियों की सराहना करता है, मैं किसी एक का न्याय नहीं कर रहा हूं)। –
@ स्टीफन कैनन: कौन कहता है कि सार प्रकार सिस्टम आपको चीजों को पूरा करने में मदद नहीं कर सकता है? रनटाइम त्रुटियों को डिबग करना जो गलती से दुरुपयोग किए गए प्रकारों के परिणामस्वरूप निश्चित रूप से मेरी पुस्तक में हो रही चीजें प्राप्त करने के रूप में नहीं गिना जाता है। –
@ माइकलबोर्गवर्ड: मैंने निश्चित रूप से यह नहीं कहा कि वे नहीं कर सकते हैं। हालांकि, वे * दुर्व्यवहार किया जा सकता है। –