What does "Exposed For Spawn" used for?

Expose on Spawn is very useful when you want to initialize an internal variable before BeginPlay is called, and helps keep blueprints cleaner.

It does nothing for C++ (AFAIK).