QHashを結合
解説
uniqueKeys()はQHash同士を結合します.キーが重複する場合は1つのキーに対して複数の値が設定されます.
定義は以下の通りです.
QHash<Key, T> & QHash::unite ( const QHash<Key, T> & other )
引数otherには連結したいQHashを指定します.
使用例
#include <QTextCodec>
#include <QTextStream>
#include <QHash>
#include <QList>
#include <QHashIterator>
int main(int argc, char *argv[]) {
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
QTextStream out(stdout);
QHash<QString, int> hash1, hash2;
hash1.insert("a", 0); // hash1 = {<a, 0>}
hash1.insert("b", 1); // hash1 = {<a, 0>, <b, 1>}
hash2.insert("a", 0); // hash2 = {<a, 0>}
hash2.insert("c", 2); // hash2 = {<a, 0>, <c, 2>}
hash2.unite(hash1); // hash2 = {<a, 0>, <a, 0>, <b, 1>, <c, 2>}
QHashIterator<QString, int> it(hash2);
while (it.hasNext()) {
it.next();
out << "<" << it.key() << ", " << it.value() << ">, ";
}
out << "\n";
return 0;
}
出力
<a, 0>, <a, 0>, <b, 1>, <c, 2>,
最終更新:2011年09月23日 19:46