Junior — Middle
What methods are used to perform type conversion in software?
sobes.tech AI
Answer from AI
In C/C++, type casting is performed using the following methods:
- C-style cast:
(type)expression— simple and universal, but less safe.
int i = (int)3.14;
2. **static_cast** — for explicit type conversion, checks compatibility at compile time.
```cpp
int i = static_cast<int>(3.14);
- dynamic_cast — used for safe conversion of pointers or references within an inheritance hierarchy, with runtime checking.
Base* b = new Derived(); Derived* d = dynamic_cast<Derived*>(b);
4. **const_cast** — for removing or adding the const qualifier.
```cpp
const int* p = &i;
int* q = const_cast<int*>(p);
- reinterpret_cast — for low-level type conversions, such as between pointers of different types.
long p = reinterpret_cast<long>(ptr);
Each method has its own use cases and safety level.