[Interest] Why QString and not std::string?

Rui Maciel rui.maciel at gmail.com
Fri Jun 15 16:29:33 CEST 2012



On 06/15/2012 12:25 PM, Konstantin Tokarev wrote:
>
>
> 15.06.2012, 15:19, "Rui Maciel"<rui.maciel at gmail.com>:
>> On 06/15/2012 11:55 AM, Konstantin Tokarev wrote:
>>
>>>   1. Historical reasons - STL was not implemented on the same level in all compilers
>>>   in the past.
>>
>> Is this constraint still relevant today?
>
> Not so long ago it turned out that toolchain for some SoC was shipped without STL so I had
> to eliminate its usage.

Wouldn't it be better to simply provide an alternative std::string 
implementation for that specific case?  And how relevant is that 
requirement today?


>>>   2. std::string does not hadle UTF16 strings, and std::wstring is non-standard
>>
>> With C++11, UTF-16 strings are supported through the std::u16string
>> type, which is a typedef for basic_string<char16_t>.
>
> Not everyone can use C++11 today.

But it appears that there is already some talks on implementing features 
in Qt5 which rely on C++11.


>> Nevertheless, why is it important to support UTF-16?
>
> 1. Faster string search modification than for UTF8
> 2. It's native UTF string format on Windows and Mac OS X.

How relevant is the efficiency of string search modification operations? 
  And what string data type is used in C++ projects that target Windows 
or OSX?


Rui Maciel



More information about the Interest mailing list