QStrings的二维矩阵

时间:2011-06-13 17:14:09

标签: qt list qt4

我想制作一份申请表,您可以为旅行预订机票。事实上,我正在为航空公司设计系统。当我想创建一个数据库(一个可以节省航班座位数的2D矩阵)时,它会给我带来错误。

在不同地方设置的航班数量和数量正在改变这是我的代码:

QString** matrix = new QString*[numberofFlights];
for (int i = 0; i < numberofFlight; i++)
{
  matrix[i] = new QString[numberofSeats];
}

我应该使用Qt中的哪个班级?

1 个答案:

答案 0 :(得分:1)

必读:Qt container classes

您可以使用QVectorQList s或其他容器类。例如,构建向量向量:

QVector< QVector<QString> > matrix(numberOfFlights);
for (int i=0; i<numberOfFlights; i++)
   matrix[i].fill("", numberOfSeats);

这将创建numberOfFlights个向量,每个向量包含numberOfSeats个空字符串。

设置特定席位:

matrix[flight][seat] = "whatever";

您可以使用通常的Qt foreach或迭代器或普通for迭代向量。