Das wichtigste Problem was ich sehe ist hirbei der Speicherplatzbedarf.
Das Problem ist kleiner als du vielleicht denkst. Wenn du den Inhalt einer Stringlist kopierts, werden nur die Pointer auf die Strings kopiert und nicht die Stringinhalte. Somit verbraucht die kopierte StringList kaum mehr als <Anzahl Zeilen>*<Sizeof(Pointer)> an zusätzlichem Speicher.