【QT 基础教程 八】QVariant类详解

概要:本期主要讲解Qt中QVariant类的常用接口。

一、简介:

1.头文件:#include<QVariant>
2.模块: QT += core
3.功能:最多的用法是将其作为中间转换类,进行不同数据类型或者Qt容器类之间的类型转换。它具有这种功能的原因是,QVatiant是所有QMetaType内置声明的数据类型和Qt容器类的联合(Union)。总之,在Qt中我们可以简单地认为它是一种万能类型类,我们只要借用它来进行类型转换就可以了。

二、常用接口:

1.初始化、赋值
//使用QVariant类的构造函数进行初始化
QVariant _var = QVariant("789");
QVariant _var = "789";
//赋值一般也使用构造函数来实现
_var = QVariant(789);
//存在使用tovariant()的情况,暂时不做介绍
2.是否可以转换
//canConvert<T>()
QVariant _var = 43;
bool _bIs = _var.canConvert<int>();//_bIs = true
_bis = _var.caConvert<QString>();//_bIs = true
3.清空
//clear()清空操作
QVariant _var = 43;
_var.clear();
4.注册自定义类型的使用(存值、取值)
//不作详细讲解,我没怎么用过
//1.自定义类型,
//2..再声明注册类型Q_DECLARE_METATYPE(T)
//3.存值:[static] QVariant QVariant::fromValue<T>()或者void setValue<T>();
//4.取值:T QVariant::value<T>();
5.是否为QmetaType数据类型
//isValid()
QVariant _var = 43;
bool _bIs = _var.isValid();//_bIs = true;

结尾:本期的主要内容就是这些,至于QVariant与数据类型之间的转换,大部分可以用 to+数据类型()这样的接口,来实现类型转换。然后,我们下期学习QVector类的用法。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

葛狂的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值