Can you change an int into a float? And because an int occupies multiple bytes in memory, can you get access to the individual bytes by themselves? Or what if you have a derived class and you want to refer to it as if it was a base class? And can you go the other way, from base class to derived class? These are the topics I’ll be explaining today.

If you want to use an initializer list to construct an object, you can use it like this:
int health {9.3};

instead of the older way that truncates:
int health = 9.3;

The C-style cast that I recommend you avoid looks like this to cast a long variable to an int variable:
long count = 100;
int shorterCount = (int)count;

And there is the similar function style cast that I also recommend you avoid. It looks almost the same:
long count = 100;
int shorterCount = int(count);

Instead of using a C-style or function style cast, you should instead use either an initializer list or one of the following named casts:
const_cast
static_cast
reinterpret_cast
dynamic_cast