2

QList と QVector があります。Qlist にデータを入力してから、QVector にコピーしようとしました。Ovector にはfromList()メソッドがあります。しかし、うまくいきません。

私のコード:

QList<int> listA;
QVector<int> vectorA; //I also tried QVector<int>vectorA(100);

for(int i=0; i<100; i++)
{
    listA.append(i);
}

vectorA.fromList(listA);

このコードの後 vectorA は空を返します

LinuxでQt 4.8.5を使用しています

4

1 に答える 1

11

あなたは書くべきです:

vectorA = QVector::fromList(listA);

クラスのfromList静的メソッドですQVector

作成したコードはQVectorfromを作成しlistAますが、代入演算子を使用して変数に格納したり、たとえば関数呼び出しで使用したりしないため、QVector は削除されます。いずれにせよ、 vectorA は空のままです。

QList::toVectorまたは、次の方法を使用できます。

vectorA = listA.toVector();
于 2013-10-24T15:19:30.603 に答える