2014-12-02 5 views
-1

В настоящее время я работаю над проектом на C++, и я использую Visual Studio 2010 Express вместе с Qt Creator 5.3.2. для графического интерфейса приложения.Преобразование 2D-вектора в 2D QVector C++

Моя проблема в том, что я хочу преобразовать 2D-вектор в 2D QVector, и я действительно не знаю, как это сделать. Я использовал, например, fromStdVector() для преобразования 1D-вектора в 1D QVector, но я не могу успешно перенести данные из 2D-вектора в 2D QVector (с этой функцией). Если бы кто-нибудь мог помочь, я был бы очень признателен.

Исходный код:

QVector< QVector<double> > test2D; // 2D QVector 
vector < vector<double> > std_test2D; // 2D vector 

test2D.resize(20); // dimensions of the 2D QVector 
for(int i=0; i<20; ++i) 
{ 
    test2D[i].resize(44); 
} 

std_test2D.resize(20); // dimensions of the 2D vector 
for(int i=0; i<20; ++i) 
{ 
    std_test2D[i].resize(44); 
} 

for(int i=0; i<20; i++) // convert vector to QVector??? 
{ 
    test2D[i].fromStdVector(std_test2D[i]); 
} 

ответ

0

Вы можете попробовать следующее:

for(int i = 0; i < 20; i++) 
{ 
    QVector v = QVector<double>::fromStdVector(std_test2D[i]); 
    test2D[i].push_back(v); 
}