[Interest] QSettings: is a group present? Crash with qWarning.

Sensei senseiwa at gmail.com
Fri Aug 24 11:00:33 CEST 2012

On 8/24/12 8:59am, Thiago Macieira wrote:
>> So there's a "bug" in the docs... am I right?
> No. It's not a bug if it's intentional.
> QBool is a hidden class that is actually a bool. In most cases, you don't
> realise it's there because it casts automatically to bool. The two cases that
> it won't do are in ... passing and in template matching.
> Qt 4 has been using QBool for 7 years and you're the first person who has come
> to this error, so I don't think it's a real issue (and you probably ignored a
> compiler warning).

Yep, as a matter of fact I ignored several compiler warnings. They all 
refer to QVector:

Implicit conversion loses integer precision: 'long' to 'int'

Apart from the obvious #warning about the new operating system being 

> QBool exists to mark a function that returns a boolean in Qt 4, but returned
> an int in Qt 3. It exists to make sure you're not treating the return value
> like it was done in Qt 3. E.g.:
> 	QString foo("hello hello");
> 	if (foo.contains("hello")>  1) { ... }
> The above was valid in Qt 3 but in Qt 4 it should error out. If the function
> returned boolean, it would compile but it would be always false.

Thanks for your clarification, I am glad to be the first one to smash 
his nose on this! :)


More information about the Interest mailing list