QT学习之QPair类

QPair类


QPair是一个用来存储一对对象的容器模板。其有两个值,firstsecond

QPair()
QPair(const T1 & value1, const T2 & value2)
QPair(const QPair<TT1, TT2> & p)
QPair(QPair<TT1, TT2> && p)
QPair &    operator=(const QPair<TT1, TT2> & p)
QPair &    operator=(QPair<TT1, TT2> && p)
  • 当这个函数需要返回两个值的时候,QPair<T1, T2>可用于一个函数的返回值。
QPair<QString, double> pair;
pair.first = "pi";
pair.second = 3.1415926;
  • QPair中放的模板数据类型必须为_可分配内存_的数据类型,不能将 QWidget 作为值放进去,可以将 QWidget* 指针放进去!
  • QPair中的公共类型:
typedef    first_type    // 为第一个元素的类型(T1)
typedef    second_type    // 为第二个元素的类型(T2)
  • 其他可使用的函数
QPair<T1, T2>    qMakePair(const T1 & value1, const T2 & value2)
bool    operator!=(const QPair<T1, T2> & p1, const QPair<T1, T2> & p2)
bool    operator<(const QPair<T1, T2> & p1, const QPair<T1, T2> & p2)
QDataStream &    operator<<(QDataStream & out, const QPair<T1, T2> & pair)
bool    operator<=(const QPair<T1, T2> & p1, const QPair<T1, T2> & p2)
bool    operator==(const QPair<T1, T2> & p1, const QPair<T1, T2> & p2)
bool    operator>(const QPair<T1, T2> & p1, const QPair<T1, T2> & p2)
bool    operator>=(const QPair<T1, T2> & p1, const QPair<T1, T2> & p2)
QDataStream &    operator>>(QDataStream & in, QPair<T1, T2> & pair)
posted @ 2015-02-02 22:26  九二  阅读(6000)  评论(0编辑  收藏  举报