OUString is mutable?
Caolán McNamara
caolanm at redhat.com
Fri Sep 28 05:03:01 PDT 2012
On Fri, 2012-09-28 at 13:46 +0200, Noel Grandin wrote:
> Hi
>
> I don't really understand the point of not being able to mutate OUString
> in-place, but being able to overwrite it via the assignment operator?
>
> It seems to me it should be one or the other.
> Either OUString is immutable, and it cannot be assigned to, except via a
> constructor, or it is mutable, and we can pretty much throw away
> OUStringBuffer.
Consider OUString as a smart const pointer to an immutable rtl_uString.
i.e.
const char *pFoo;
pFoo = "hello";
pFoo = "world"; //ok
pFoo[0] = 'A'; //won't compile
const_cast<char*>(pFoo)[0] = 'A'; //compiles but evil
C.
More information about the LibreOffice
mailing list