Implicit

Compiler does this automatically example is integerā†’double. It can do this easily. sometimes it will also allow ā€˜unsafeā€™ operations like doubleā†’integer

Explicit

use the static_cast operator static_cast<new_type>(expression)

std::cout << static_cast<int>(5.5); // explicitly convert double value 5.5 to an int