It's basically free to initialize an empty string and release it (doesn't perform a heap allocation), but my understanding of the stringlist constructor is that it does perform a heap allocation, which is not cheap