const_cast
एक चर को हटाने या जोड़ने के लिए इस्तेमाल किया जा सकता है। यह तब उपयोगी हो सकता है जब किसी वैरिएबल से कॉन्स्टेंस जोड़ना/निकालना आवश्यक हो।
static_cast
इसका उपयोग सामान्य/साधारण प्रकार के रूपांतरण के लिए किया जाता है। यह निहित प्रकार के जबरदस्ती के लिए जिम्मेदार कलाकार भी है और इसे स्पष्ट रूप से भी कहा जा सकता है। आपको इसका उपयोग फ्लोट को इंट, चार से इंट आदि में बदलने जैसे मामलों में करना चाहिए।
dynamic_cast
इस कास्ट का उपयोग बहुरूपता को संभालने के लिए किया जाता है। जब आप किसी व्युत्पन्न कक्षा में कास्टिंग कर रहे हों तो आपको केवल इसका उपयोग करने की आवश्यकता होती है। जब आप बेस क्लास से व्युत्पन्न वर्ग में डालते हैं तो यह विशेष रूप से विरासत में उपयोग किया जाता है।
reinterpret_cast
यह उपयोग करने में सबसे कठिन है। इसका उपयोग बिट पैटर्न की पुनर्व्याख्या के लिए किया जाता है और यह अत्यंत निम्न स्तर का होता है। इसका उपयोग मुख्य रूप से कच्चे डेटा बिट स्ट्रीम को वास्तविक डेटा में बदलने या संरेखित पॉइंटर के निचले बिट्स में डेटा संग्रहीत करने जैसी चीज़ों के लिए किया जाता है।