What is a QVariant and when should it be used?
What is a QVariant
and when sho开发者_运维知识库uld it be used?
QVariant is used to store references to values where you don't necessarily know what is inside. It's a way to create APIs that can accept "anything" as a reference to an unknown type. IE, instead of having to have an API that accepts a long, and another for an int, and another for a float, and another for a string you can have a single API that accepts a QVariant instead.
Then inside a more complex function where you need a certain type (like in QSettings) you can extract just what you need from the Variant after getting it back.
QVariant is a container of variables. It can store variables of different types. Similar in some way to void*. But it provides You information about the stored type.
It can be used for example to return different types of values from a function.
精彩评论