On Wednesday 01 April 2015 10:35:20 Hamish Moffatt wrote:
> What's the benefit of QT_NO_CAST_FROM_ASCII though? I tried, but gave up 
> after I saw the first million compile errors. I converted quite a few 
> places to use QStringLiteral and QLatin1String, and the debug executable 
> seemed to grow rapidly (MSVC 2013). Release was barely affected though.

To avoid encoding mistakes, like:

        QFile f(filename);
        if (f.open(QIODevice::ReadOnly)) {
                QString line = f.readLine();
                parse(line);
        }

Every point in the source where you create a QString from an 8-bit 
representation, you MUST know what the encoding that 8-bit representation is.

There are no exceptions. You MUST know, period.

If you don't set QT_NO_CAST_FROM_ASCII, you're saying that every place where 
you allowed the automatic conversion to take place should use UTF-8. In the 
example above, are you sure the file is encoded in UTF-8? Usually, files are 
encoded in the locale's encoding...

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center

_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to