QPair类
QPair是一个用来存储一对对象的容器模板。其有两个值,first和second。
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)