मुझे पता है कि सी में विभिन्न कास्टिंग ऑपरेटरों ++ पहले से ही यहाँ कई बार चर्चा की गई है, लेकिन मेरे सवाल का के बीच संख्यात्मक प्रकार कास्टिंग के बारे में विशेष रूप से है, नहीं सी शैली और C के बीच सामान्य अंतर के बारे में ++ शैली ऑपरेटर। मैं इसे कक्षा पदानुक्रम के भीतर कास्टिंग करने से एक बिल्कुल अलग विषय मानता हूं।सी ++ सांख्यिक प्रकार के बीच कास्टिंग
मैं एक डबल करने के लिए एक पूर्णांक i
कास्ट करना चाहते हैं कहो, विकल्प मेरे पास से कुछ हैं
static_cast<double>(i)
(double) i
double(i)
व्यक्तिगत तौर पर मैं इस मामले में 3 लाइन में निर्माता की तरह शैली पसंद करते हैं क्योंकि मैं व्यक्त करना कि यह एक कास्ट बेटी वर्ग प्रकार नहीं है, जहां मैं निश्चित रूप से static_cast
या dynamic_cast
का उपयोग करता हूं।
टेक्स्ट एडिटर में खोज करते समय इस प्रकार के कलाकार को ढूंढना मुश्किल हो जाने के अलावा, क्या मेरी पसंद में कोई कमी है?
संदर्भ क्या है? आपको क्यों डालना है? –
@ करोलि हॉर्वथ: अच्छा सवाल, मैं हमेशा कास्ट से बचने की कोशिश करता हूं, लेकिन सामान्य मामलों जहां मैं ऐसा करता हूं गणनाओं के भीतर या कार्य तर्कों को पार करते समय होता है। –
"इस प्रकार के कास्ट को ढूंढना मुश्किल है" इसका उपयोग करने के लिए पर्याप्त कारण नहीं है। –