Нашел ситуацию, когда целесообразно хранить пустую строку в куче, чем NULL-указатель. Если пытаемся при копировании использовать имеющуюся память, а не перераспределять память каждый раз. Получается что когда присваиваем пустую строку, то возможно будет выгодней просто первому символу в куче присвоить символ конца строки. Ну это если мы используем поле типа capacity. И тогда при последующем присвоении какой-либо строки, нам возможно не придется (если capacity хватает) выделять память заново.