How can I ensure that a plugin's settings are not lost after updating a plugin?

My worst fear with plugins in general is losing information when downloading a new version. I want to make a plugin like an effect rack, where new effects could be added in the future. I am creating Effects as structs derived from a base Effect class, and adding definitions for their constructor and process() functions in the plugin.cpp file. If I update the plugin with new effects, how does that work with users updating to a newer version? Is there a way to avoid losing that information if an update is installed?