OUString concatenation vs OUStringBuffer append
nopower at suse.com
Fri Jun 14 07:14:39 PDT 2013
On 14/06/13 14:19, Matteo Casalin wrote:
> Hi all,
> in a recent patch  for String to OUString conversion I replaced the construction of an OUString from a sequence of OUStringBuffer.append to a single concatenation of OUString/constant strings .
> Noel Power (whom I thank for the careful review, and is here in copy), correctly asks which way is preferred for such an operation: I don't know the answer, can some expert provide me an insight on this? I find OUString concatenation easier to read, but this could be not as efficient as the original code, or just undesired.
> Thanks and kind regards
> - OUStringBuffer aString;
> - aString.append('(');
> - aString.append(static_cast<sal_Int32>(nColMerge));
> - aString.append(',');
> - aString.append(static_cast<sal_Int32>(nRowMerge));
> - aString.append(')');
> - return aString.makeStringAndClear();
> + OUString aRet = "("
> + + OUString::number(static_cast<sal_Int32>(nColMerge))
> + + ","
> + + OUString::number(static_cast<sal_Int32>(nRowMerge))
> + + ")";
> + return aRet;
just a note, I don't find the changed code offensive or anything :-) in
fact the opposite I find it easier on the eye than OUStringBuffer But..
in this case the OUStringBuffer usage was the result of previous
rework. Prior to the OUStringBuffer rework the code looked quite like
the new OUString change, I know Lubos/Stephan have done lots of stuff
around strings and honestly ( although I am sure it probably is
mentioned somewhere in the mailing list ) I don't know what the current
preferred way is. I seem to remember something about OUString
concatenation now being as efficient as OUStringBuffer these days and
that the advantage of OUStringBuffer ( in such cases as above ) is not
as great. but really I can't recall
More information about the LibreOffice