私は文字列を持っています:
1,a,2,b,3,c etc
ペアベクトルに変換したい:
std::vector<std::pair<int, QString> > myVector;
1がintで、aが文字列、2が次のint、bが次の文字列などです。
ありがとう
int main()
{
QString foo = "1,a,2,b,3,c";
QStringList splits = foo.split(',');
assert(splits.size() % 2 == 0); // check if even
qDebug() << splits;
std::vector< std::pair<int, QString> > vs;
for(QStringList::const_iterator it = splits.begin();
it != splits.end(); ++it) {
bool ok;
QStringList::const_iterator tmp = it;
++it;
vs.push_back(std::make_pair(tmp->toInt(&ok, 10), *it));
assert(ok); // check if conversion worked
}
return 0;
}