Select Answer
Checks the struct size at runtime and crashes if wrong
Checks at compile time -- if sizeof(Packet) is not 5, the build fails with the error message, preventing corrupted protocol frames
Checks only in debug builds
No effect -- static_assert is just documentation