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)
05-06 17:05