I think OnActorBeginOverlap is a blueprint event, not a c++ method you can override. Try adding your overlap function as a delegate to the CollisionMesh like so:
CollisionMesh->OnComponentBeginOverlap.AddDynamic( this, &AZone::OnActorBeginOverlap);
You might have to change the signature of AZone::OnActorBeginOverlap to match OnComponentBeginOverlap though.