QList Class
template <typename T> class QListQList クラスは、動的な配列を提供するテンプレート・クラスです。詳細...
ヘッダー | #include <QList> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
によって継承される: |
- 継承メンバーを含む全メンバー一覧
- 非推奨メンバー
- QListは暗黙の共有クラスに属しています。
注意:このクラスの関数はすべてリエントラントです。
パブリック型
パブリック関数
QList() | |
QList(qsizetypesize) | |
QList(std::initializer_list<T>args) | |
QList(InputIteratorfirst, InputIteratorlast) | |
QList(qsizetypesize, QList<T>::parameter_typevalue) | |
(since 6.8) | QList(qsizetypesize, Qt::Initialization) |
QList(const QList<T>&other) | |
QList(QList<T>&&other) | |
~QList() | |
void | append(QList<T>::parameter_typevalue) |
(since 6.0) void | append(QList<T>&&value) |
void | append(QList<T>::rvalue_refvalue) |
void | append(const QList<T>&value) |
(since 6.6) QList<T> &値 | assign(std::initializer_list<T>l) |
(since 6.6) QList<T> & (std::initializer_list<T> l) | assign(InputIteratorfirst, InputIteratorlast) |
(since 6.6) QList<T> & (qsizetype n, inputIterator last) | assign(qsizetypen, QList<T>::parameter_typet) |
QList<T>::const_reference | at(qsizetypei) const |
QList<T>::reference | back() |
QList<T>::const_reference | back() const |
QList<T>::iterator | begin() |
QList<T>::const_iterator | begin() const |
qsizetype | capacity() const |
QList<T>::const_iterator | cbegin() const |
QList<T>::const_iterator | cend() const |
void | clear() |
QList<T>::const_iterator | constBegin() const |
QList<T>::const_pointer | constData() const |
QList<T>::const_iterator | constEnd() const |
const T & | constFirst() const |
const T & | constLast() const |
ブール | contains(const AT&value) const |
qsizetype | count(const AT&value) const |
qsizetype | count() const |
QList<T>::const_reverse_iterator | crbegin() const |
QList<T>::const_reverse_iterator | crend() const |
QList<T>::pointer | data() |
QList<T>::const_pointer | data() const |
QList<T>::iterator | emplace(qsizetypei, Args &&...args) |
QList<T>::iterator | emplace(QList<T>::const_iteratorbefore, Args &&...args) |
QList<T>::reference | emplaceBack(Args &&...args) |
QList<T>::reference | emplace_back(Args &&...args) |
ブール | empty() const |
QList<T>::iterator | end() |
QList<T>::const_iterator | end() const |
ブール | endsWith(QList<T>::parameter_typevalue) const |
QList<T>::iterator | erase(QList<T>::const_iteratorpos) |
QList<T>::iterator | erase(QList<T>::const_iteratorbegin, QList<T>::const_iteratorend) |
QList<T> &(QList<T>::const_iterator end) | fill(QList<T>::parameter_typevalue, qsizetypesize= -1) |
T & | first() |
(since 6.0) QList<T> | first(qsizetypen) const |
const T & | first() const |
QList<T>::reference | front() |
QList<T>::const_reference | front() const |
qsizetype | indexOf(const AT&value, qsizetypefrom= 0) const |
QList<T>::iterator | insert(qsizetypei, QList<T>::parameter_typevalue) |
QList<T>::iterator | insert(qsizetypei, QList<T>::rvalue_refvalue) |
QList<T>::iterator | insert(QList<T>::const_iteratorbefore, qsizetypecount, QList<T>::parameter_typevalue) |
QList<T>::iterator | insert(QList<T>::const_iteratorbefore, QList<T>::parameter_typevalue) |
QList<T>::iterator | insert(QList<T>::const_iteratorbefore, QList<T>::rvalue_refvalue) |
QList<T>::iterator | insert(qsizetypei, qsizetypecount, QList<T>::parameter_typevalue) |
ブール | isEmpty() const |
T & | last() |
(since 6.0) QList<T> | last(qsizetypen) const |
const T & | last() const |
qsizetype | lastIndexOf(const AT&value, qsizetypefrom= -1) const |
qsizetype | length() const |
(since 6.8) qsizetype | max_size() const |
QList<T> | mid(qsizetypepos, qsizetypelength= -1) const |
void | move(qsizetypefrom, qsizetypeto) |
void | pop_back() |
void | pop_front() |
void | prepend(QList<T>::parameter_typevalue) |
void | prepend(QList<T>::rvalue_refvalue) |
void | push_back(QList<T>::parameter_typevalue) |
void | push_back(QList<T>::rvalue_refvalue) |
void | push_front(QList<T>::parameter_typevalue) |
void | push_front(QList<T>::rvalue_refvalue) |
QList<T>::reverse_iterator | rbegin() |
QList<T>::const_reverse_iterator | rbegin() const |
void | remove(qsizetypei, qsizetypen= 1) |
qsizetype | removeAll(const AT&t) |
void | removeAt(qsizetypei) |
void | removeFirst() |
(since 6.1) qsizetype | removeIf(述語pred) |
void | removeLast() |
ブール | removeOne(const AT&t) |
QList<T>::reverse_iterator | rend() |
QList<T>::const_reverse_iterator | rend() const |
void | replace(qsizetypei, QList<T>::parameter_typevalue) |
void | replace(qsizetypei, QList<T>::rvalue_refvalue) |
void | reserve(qsizetypesize) |
(since 6.0) void | resize(qsizetypesize) |
(since 6.0) void | resize(qsizetypesize, QList<T>::parameter_typec) |
(since 6.8) void | resizeForOverwrite(qsizetypesize) |
void | shrink_to_fit() |
qsizetype | size() const |
(since 6.0) QList<T> | sliced(qsizetypepos, qsizetypen) const |
(since 6.0) QList<T> | sliced(qsizetypepos) const |
void | squeeze() |
ブール | startsWith(QList<T>::parameter_typevalue) const |
void | swap(QList<T>&other) |
void | swapItemsAt(qsizetypei, qsizetypej) |
T | takeAt(qsizetypei) |
QList<T>::value_type | takeFirst() |
QList<T>::value_type | takeLast() |
T | value(qsizetypei) const |
T | value(qsizetypei, QList<T>::parameter_typedefaultValue) const |
ブール | operator!=(const QList<T>&other) const |
QList<T> | operator+(QList<T>&&other) &&. |
QList<T> | operator+(const QList<T>&other) && QList<T> &other |
QList<T> | operator+(QList<T>&&other) const && QList<T> (const QList<T> &&other) |
QList<T> | operator+(const QList<T>&other) const & QList<T> &other. |
QList<T> & (const QList<T> &other) | operator+=(const QList<T>&other) |
(since 6.0) QList<T> & (const QList<T> &other) | operator+=(QList<T>&&other) |
QList<T> & (QList<T> &&other) | operator+=(QList<T>::parameter_typevalue) |
QList<T> & (QList<T>::parameter_type value) | operator+=(QList<T>::rvalue_ref値) |
ブール | operator<(const QList<T>&other) const |
QList<T> &(QList<T>::rvalue_ref value) | operator<<(QList<T>::parameter_typevalue) |
QList<T> & (QList<T>::parameter_type value) | operator<<(const QList<T>&other) |
(since 6.0) QList<T> & (const QList<T> &other) | operator<<(QList<T>&&other) |
QList<T> & (const QList<T> &&other) | operator<<(QList<T>::rvalue_refvalue) |
ブール | operator<=(const QList<T>&other) const |
QList<T> & (QList<T>::rvalue_ref value) | operator=(QList<T>&&other) |
QList<T> &(QList<T> &&other) | operator=(const QList<T>&other) |
QList<T> & (const QList<T> &other) | operator=(std::initializer_list<T>args) |
ブール | operator==(const QList<T>&other) const |
ブール | operator>(const QList<T>&other) const |
ブール | operator>=(const QList<T>&other) const |
QList<T>::reference | operator[](qsizetypei) |
QList<T>::const_reference | operator[](qsizetypei) const |
静的パブリックメンバ
(since 6.8) qsizetype | maxSize() |
関連する非メンバ
(since 6.1) qsizetype | erase(QList<T> &list, const AT &t) |
(since 6.1) qsizetype | erase_if(QList<T> &list, Predicate pred) |
size_t | qHash(const QList<T> &key, size_t seed = 0) |
QDataStream & | operator<<(QDataStream &out, const QList<T> &list) |
QDataStream & | operator>>(QDataStream &in, QList<T> &list) |
詳細な説明
QList<T> は Qt の汎用コンテナクラスのひとつです。QVector<T> は Qt 5 では別のクラスでしたが、現在は QList の単純なエイリアスになっています。
QList<T> とQVarLengthArray<T> は似たような API と機能を提供します。これらはしばしば互換性がありますが、パフォーマンス上の影響があります。以下は使用例の概要です:
- QListをデフォルトの最初の選択肢とすべきです。
- QVarLengthArray QListはスタック上の領域を確保する配列を提供しますが、必要に応じてヒープ上に動的に増やすことができます。QListはスタック上の領域を確保する配列ですが、必要に応じてヒープ上に動的に成長することができます。
- リスト途中での挿入が一定時間保証され、インデックスではなくアイテムへのイテレータを使用する、本当のリンクリストが必要な場合は、std::listを使用してください。
注: QList とQVarLengthArray はどちらも C 互換の配列レイアウトを保証します。
注意 : Qt 5 の QList は常に C 互換の配列レイアウトを持っていたわけではなく、より予測可能なパフォーマンスを得るために、QVector を使用することをよく推奨していました。Qt 6ではこのようなことはなくなり、両方のクラスが実装を共有し、互換性を持って使用できるようになりました。
以下は、整数を格納する QList と、QString の値を格納する QList の例です:
QListは連続したメモリの配列に項目を格納します。通常、リストは初期サイズで作成されます。例えば、次のコードは200個の要素を持つQListを作成します:
要素は自動的に、デフォルトで構成された値で初期化されます。リストを別の値で初期化したい場合は、その値をコンストラクタの第2引数に渡します:
また、いつでもfill() を呼び出して、リストを値で満たすことができます。
QListは、C++の配列と同じように0ベースのインデックスを使用します。特定のインデックス位置の項目にアクセスするには、 operator[]() を使用します。非 const リストでは、operator[]() は、代入の左辺で使用できる項目への参照を返します:
if (list[0] == "Liz") list[0] = "Elizabeth";
読み取り専用のアクセスには、at() を使用する方法もある:
for (qsizetype i = 0; i < list.size(); ++i) { if (list.at(i) == "Alfonso") cout << "Found Alfonso at position " << i << endl; }
at()は、ディープコピーが発生しないため、operator[]()よりも高速である。
QListに格納されたデータにアクセスするもう1つの方法は、data ()を呼び出すことです。この関数は、リストの最初の項目へのポインタを返します。このポインタを使用して、リストに格納されている要素に直接アクセスしたり、変更したりすることができます。このポインタは、プレーンな C++ 配列を受け付ける関数に QList を渡す必要がある場合にも便利です。
リスト内の特定の値の出現回数をすべて検索したい場合は、indexOf ()またはlastIndexOf ()を使用します。前者は指定されたインデックス位置から前方に検索し、後者は後方に検索します。どちらも、一致する項目が見つかればそのインデックスを返し、そうでなければ-1を返す。そうでなければ-1を返す:
qsizetype i = list.indexOf("Harumi"); if (i != -1) cout << "First occurrence of Harumi is at position " << i << endl;
単にリストに特定の値が含まれているかどうかを調べたい場合は、contains()を使用する。リスト内で特定の値が何回出現するかを調べたい場合は、count() を使用します。
QList には、項目の追加、移動、削除を行う基本関数が用意されています:insert()、replace()、remove()、prepend()、append()。append ()、prepend ()、replace ()を除いて、これらの関数はリスト内の多くの項目をメモリ上で1つずつ移動させる必要があるため、大きなリストでは遅い(線形時間)場合があります。中間の高速な挿入/削除を提供するコンテナ・クラスが必要な場合は、代わりにstd::listを使用してください。
プレーンなC++配列とは異なり、QListはresize ()を呼び出すことで、いつでもサイズを変更することができます。新しいサイズが古いサイズより大きい場合、QListはリスト全体を再割り当てする必要があるかもしれません。QListは、実際に必要なデータの2倍までのメモリを事前に確保することで、再割り当ての回数を減らそうとしています。
QListを少しずつ構築していて、含まれる要素の数があらかじめだいたいわかっている場合は、reserve ()を呼び出して、QListに一定量のメモリを事前に割り当ててもらうことができます。また、capacity() を呼び出して、QList が実際に割り当てているメモリの量を調べることもできます。
const以外の演算子や関数を使用すると、暗黙の共有により、QListがデータのディープコピーを行う可能性があることに注意してください。
QListの値型は、代入可能なデータ型でなければなりません。これは、一般的に使用されるほとんどのデータ型をカバーしていますが、コンパイラーは、例えば、QWidget を値として格納することを許可しません。代わりに、QWidget *を格納します。例えば、indexOf ()とlastIndexOf ()は、値型がoperator==()
をサポートしている必要があります。これらの要件は、関数ごとに文書化されている。
アイテムの反復処理については、コンテナの反復処理を参照してください。std::sort()
,std::reverse()
,std::count_if()
などの<algorithm>
ヘッダーの関数と QList の使用については、Qt コンテナと標準アルゴリズム を参照してください。
QList に加えて、Qt ではQVarLengthArray も提供しています。このクラスは非常に低レベルのクラスで、機能はほとんどありませんが、速度のために最適化されています。
Qt コンテナの使用に関する詳細情報
Qt コンテナと STL コンテナの比較については、「Qt コンテナを理解する」を参照してください。
最大サイズとメモリ不足の条件
QList の最大サイズはアーキテクチャに依存します。ほとんどの64ビット・システムでは2GB以上のメモリを割り当てることができますが、典型的な上限は2^63バイトです。実際の値は、データ・ブロックの管理に必要なオーバーヘッドにも依存します。その結果、32ビット・プラットフォームでは2GBからオーバーヘッドを差し引いたサイズ、64ビット・プラットフォームでは2^63バイトからオーバーヘッドを差し引いたサイズが最大になると予想されます。QListに格納できる要素の数は、この最大サイズを格納要素のサイズで割ったものになります。
メモリ割り当てに失敗すると、QListはQ_CHECK_PTR マクロを使用します。このマクロは、アプリケーションが例外サポート付きでコンパイルされている場合、std::bad_alloc
例外をスローします。例外が無効になっている場合、メモリ不足は未定義の動作です。
オペレーティング・システムは、割り当てられたメモリ、特に連続した大 きなブロックを大量に保持するアプリケーションに対して、さらなる制限を課す可能性が あることに注意してください。そのような考慮事項や、そのような動作の設定、あるいは緩和策は、Qt API の範囲外です。
メンバ型ドキュメント
[alias]
QList::ConstIterator
Qt-style synonym forQList::const_iterator.
[alias]
QList::Iterator
Qt-style synonym forQList::iterator.
[alias]
QList::const_pointer
STL との互換性のために提供される。
[alias]
QList::const_reference
STL との互換性のために提供される。
[alias]
QList::const_reverse_iterator
QList::const_reverse_iterator typedef は,QList に対する STL 形式の const 逆イテレータを提供する.
警告. 暗黙的に共有されたコンテナ上のイテレータは、STLイテレータのようには動作しません。そのコンテナ上でイテレータがアクティブになっている間は、コンテナのコピーは避けるべきである。詳細については、暗黙的共有イテレータの問題を参照してください。
警告 QList が変更されると、イテレータは無効になる。デフォルトでは、すべてのイテレータが無効になると考えてください。この規則に対する例外は、明示的に文書化されています。
QList::rbegin()、QList::rend()、QList::reverse_iterator 、QList::const_iteratorも参照のこと 。
[alias]
QList::difference_type
STL との互換性のために提供される。
[alias]
QList::parameter_type
[alias]
QList::pointer
STL との互換性のために提供される。
[alias]
QList::reference
STL との互換性のために提供される。
[alias]
QList::reverse_iterator
QList::reverse_iterator typedef は,QList に対する STL 形式の非 const 逆イテレータを提供する.
警告: 暗黙的に共有されたコンテナ上のイテレータは、STL イテレータのようには動作しません。そのコンテナ上でイテレータがアクティブになっている間は、コンテナのコピーを避けるべきである。詳細については、暗黙的共有イテレータの問題を参照してください。
警告 QList が変更されると、イテレータは無効になる。デフォルトでは、すべてのイテレータが無効になると考えてください。この規則に対する例外は、明示的に文書化されています。
QList::rbegin()、QList::rend()、QList::const_reverse_iterator 、QList::iteratorも参照のこと 。
[alias]
QList::rvalue_ref
[alias]
QList::size_type
STL との互換性のために提供される。
[alias]
QList::value_type
STL との互換性のために提供される。
メンバ関数ドキュメント
[since 6.0]
void QList::resize(qsizetype size)
[since 6.0]
void QList::resize(qsizetype size, QList<T>::parameter_type c)
リストのサイズをsize に設定する。size が現在のサイズより大きい場合、要素が末尾に追加される。新しい要素は、デフォルトで構成される値か c のいずれかで初期化される。size が現在のサイズより小さい場合、要素が末尾から削除される。
このリストが共有されていない場合、capacity ()は保持される。余分な容量を削除するにはsqueeze() を使用します。
この関数はQt 6.0で導入されました。
size()も参照してください 。
value をリストの先頭に挿入する。
例
QList<QString> list; list.prepend("one"); list.prepend("two"); list.prepend("three"); // list: ["three", "two", "one"]
これは list.insert(0,value) と同じである。
通常、この操作は比較的高速です(償却された定数時間)。QList は、リスト・データの先頭に余分なメモリを割り当て、操作のたびにデータを再割り当てしたり移動したりすることなく、その方向に成長させることができます。QList しかし、定数時間のプリペンドが保証されたコンテナ・クラスが必要な場合は、代わりにstd::listを使う。
template <typename... Args> QList<T>::reference QList::emplaceBack(Args &&... args)
template <typename... Args> QList<T>::reference QList::emplace_back(Args &&... args)
コンテナの末尾に新しい要素を追加する。この新しい要素は、args を引数としてインプレースで構築されます。
新しい要素への参照を返します。
例
QList<QString> list{"one", "two"}; list.emplaceBack(3, 'a');qDebug() << list; // リスト:["one", "two", "aaa"]
返された参照を使用して、新しく作成されたオブジェクトにアクセスすることも可能である:
これは、list.emplace(list.size(),args) と同じです。
emplaceも参照して ください。
QList<T>::iterator QList::insert(qsizetype i, QList<T>::parameter_type value)
QList<T>::iterator QList::insert(qsizetype i, QList<T>::rvalue_ref value)
リストのインデックス位置i にvalue を挿入する。i が 0 の場合、値はリストの先頭に追加されます。i がsize() の場合、値はリストに追加されます。
例
QList<QString> list = {"alpha", "beta", "delta"}; list.insert(2, "gamma"); // list: ["alpha", "beta", "gamma", "delta"]
例:大きなリストの場合、この操作は時間がかかります(線形時間)。なぜなら、i 以上のインデックスにあるすべての項目を、メモリ上でさらに1つ上の位置に移動する必要があるからです。高速なinsert() 関数を提供するコンテナ・クラスが欲しい場合は、代わりに std::list を使用してください。
append(),prepend(),remove()も参照の こと。
QList<T>::iterator QList::insert(QList<T>::const_iterator before, QList<T>::parameter_type value)
QList<T>::iterator QList::insert(QList<T>::const_iterator before, QList<T>::rvalue_ref value)
これはオーバーロードされた関数である。
イテレータbefore が指すアイテムの前にvalue を挿入します。挿入された項目を指すイテレータを返します。
void QList::replace(qsizetype i, QList<T>::parameter_type value)
void QList::replace(qsizetype i, QList<T>::rvalue_ref value)
インデックス位置i のアイテムをvalue で置き換える。
i はリストの有効なインデックス位置でなければならない(すなわち、0 <= < ())。i size
operator[]() およびremove()も参照 。
void QList::push_front(QList<T>::parameter_type value)
void QList::push_front(QList<T>::rvalue_ref value)
この関数は STL との互換性のために提供されている。prepend(value) と同等です。
[static constexpr, since 6.8]
qsizetype QList::maxSize()
[constexpr noexcept, since 6.8]
qsizetype QList::max_size() const
これは、理論上リストが保持できる要素の最大数を返す。実際には、システムで利用可能なメモリ量によって制限されるため、この数はもっと小さくなります。
この関数は Qt 6.8 で導入されました。
QList<T> QList::operator+(QList<T> &&other) &&
QList<T> QList::operator+(const QList<T> &other) &&
QList<T> QList::operator+(QList<T> &&other) const &
QList<T> QList::operator+(const QList<T> &other) const &
このリストのすべての項目の後に、other のリストのすべての項目が続くリストを返します。
operator+=()も参照 。
QList::QList()
空のリストを構築します。
resize()も参照してください 。
[explicit]
QList::QList(qsizetype size)
初期サイズsize の要素を持つリストを構築する。
要素はデフォルトの値で初期化されます。
resize()も参照 。
QList::QList(std::initializer_list<T> args)
args で与えられた std::initializer_list からリストを構築します。
template <typename InputIterator, QList<T>::if_input_iterator<InputIterator> = true> QList::QList(InputIterator first, InputIterator last)
イテレータ範囲 [first,last] 内の内容を持つリストを構築します。
注意: このコンストラクタは、InputIterator
がLegacyInputIterator の要件を満たす場合にのみ、オーバーロード解決に参加します。
InputIterator
の値型はT
に変換可能でなければなりません。
QList::QList(qsizetype size, QList<T>::parameter_type value)
初期サイズsize の要素を持つリストを構築する。各要素はvalue で初期化されます。
[since 6.8]
QList::QList(qsizetype size, Qt::Initialization)
初期サイズsize の要素を持つリストを構築します。
QListは要素を初期化しないように試みます。
具体的には
T
にQt::Uninitialized
を受け付けるコンストラクタがある場合、そのコンストラクタを使用して要素を初期化します;- そうでない場合、各要素はデフォルトで構築されます。それ以外の場合、各要素はデフォルトで構築されます。些細に構築可能な型(
int
、float
など)の場合、これは初期化しないことと同じです。
この関数はQt 6.8で導入されました。
resizeForOverwrite()も参照してください 。
[default]
QList::QList(const QList<T> &other)
other のコピーを構築する。
QListは暗黙的に共有されるため、この処理には一定の時間がかかる。これにより、関数からQListを返すのが非常に速くなります。共有インスタンスが変更された場合、それはコピーされ(コピーオンライト)、線形時間がかかります。
operator=()も参照してください 。
[default]
QList::QList(QList<T> &&other)
Move-QListインスタンスを構築し、other が指していたのと同じオブジェクトを指すようにする。
[default]
QList::~QList()
リストを破棄する。
void QList::append(QList<T>::parameter_type value)
value をリストの最後に挿入する。
例:
QList<QString> list; list.append("one"); list.append("two"); QString three = "three"; list.append(three); // list: ["one", "two", "three"] // three: "three"
これは、resize(size() + 1)を呼び出し、value をリストの新しい最後の要素に代入するのと同じである。
この操作は比較的高速である。というのも、QList は通常、必要以上のメモリーを確保するので、毎回リスト全体を再割り当てすることなく成長できるからである。
operator<<()、prepend()、insert()も参照のこと 。
[since 6.0]
void QList::append(QList<T> &&value)
これはオーバーロードされた関数である。
value リストの項目をリストの最後に移動します。
この関数は Qt 6.0 で導入されました。
operator<<() およびoperator+=()も参照してください 。
void QList::append(QList<T>::rvalue_ref value)
これはオーバーロードされた関数である。
例
QList<QString> list; list.append("one"); list.append("two"); QString three = "three"; list.append(std::move(three)); // list: ["one", "two", "three"] // three: ""
void QList::append(const QList<T> &value)
これはオーバーロードされた関数です。
value リストの項目をこのリストに追加する。
operator<<() およびoperator+=()も参照 。
[since 6.6]
QList<T> &QList::assign(std::initializer_list<T> l)
このリストの内容を、l の要素のコピーで置き換える。
このリストのサイズはl の要素数に等しくなる。
この関数は、l の要素数がこのリストの容量を超えるか、このリストが共有されている場合にのみ、メモリを確保します。
この関数は Qt 6.6 で導入されました。
[since 6.6]
template <typename InputIterator, QList<T>::if_input_iterator<InputIterator> = true> QList<T> &QList::assign(InputIterator first, InputIterator last)
このリストの内容を、イテレータ範囲 [first,last] 内の要素のコピーに置き換えます。
このリストのサイズは、範囲 [first,last] 内の要素数に等しくなります。
この関数は、範囲の要素数がこのリストの容量を超えるか、このリストが共有されている場合にのみ、メモリを確保します。
注意 :この関数のオーバーロードは、InputIterator
がLegacyInputIterator の要件を満たす場合にのみ、オーバーロード解決に参加します。
注意 :いずれかの引数が *this へのイテレータである場合の動作は未定義です。
この関数は Qt 6.6 で導入されました。
[since 6.6]
QList<T> &QList::assign(qsizetype n, QList<T>::parameter_type t)
このリストの内容をt のn コピーで置き換える。
このリストのサイズはn と等しくなる。
この関数は、n がリストの容量を超えるか、このリストが共有されている場合にのみ、メモリを割り当てます。
この関数は Qt 6.6 で導入されました。
[noexcept]
QList<T>::const_reference QList::at(qsizetype i) const
リストのインデックス位置i にある項目を返す。
i はリストの有効なインデックス位置でなければなりません (つまり、0 <= < ())。i size
value() およびoperator[]()も参照 。
QList<T>::reference QList::back()
この関数は STL との互換性のために提供されている。last() と同等です。
[noexcept]
QList<T>::const_reference QList::back() const
これはオーバーロードされた関数である。
QList<T>::iterator QList::begin()
リストの最初の項目を指すSTL 形式のイテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されると無効になります。
constBegin() およびend()も参照 。
[noexcept]
QList<T>::const_iterator QList::begin() const
これはオーバーロードされた関数である。
qsizetype QList::capacity() const
再割り当てを行わずにリストに格納できる項目の最大数を返します。
この関数の唯一の目的は、QList'のメモリ使用量を微調整する手段を提供することです。一般に、この関数を呼び出す必要はほとんどありません。リスト内の項目数を知りたい場合は、size() を呼び出す。
注意: 静的に割り当てられたリストは、空でなくても容量が0であることを報告します。
警告 割り当てられたメモリ・ブロック内の空き領域の位置は未定義です。言い換えると、空きメモリが常にリストの末尾にあると仮定してはならない。reserve() を呼び出すことで、末尾に十分な空き領域があることを確認できる。
reserve() およびsqueeze()も参照の こと。
[noexcept]
QList<T>::const_iterator QList::cbegin() const
リストの最初の項目を指す constSTL 形式のイテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されると無効になります。
[noexcept]
QList<T>::const_iterator QList::cend() const
リストの最後のアイテムの直後を指す constSTL 形式のイテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されたときに無効になります。
void QList::clear()
リストからすべての要素を削除する。
このリストが共有されていない場合、capacity() は保持される。余分な容量を削除するにはsqueeze() を使用します。
resize() およびsqueeze()も参照してください 。
[noexcept]
QList<T>::const_iterator QList::constBegin() const
リストの最初の項目を指す constSTL 形式のイテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されると無効になります。
[noexcept]
QList<T>::const_pointer QList::constData() const
リストに格納されているデータへの const ポインタを返します。このポインタを使用して、リスト内の項目にアクセスすることができます。
警告 ポインタは、切り離されたときや、QList が変更されたときに無効になります。
この関数は、C++のプレーンな配列を受け付ける関数にリストを渡すのに便利です。
data() およびoperator[]()も参照 。
[noexcept]
QList<T>::const_iterator QList::constEnd() const
リストの最後のアイテムの直後を指す constSTL 形式のイテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されたときに無効になります。
constBegin() およびend()も参照 。
[noexcept]
const T &QList::constFirst() const
リストの最初の項目への const リファレンスを返します。この関数は、リストが空でないことを前提としています。
constLast()、isEmpty() およびfirst()も参照 。
[noexcept]
const T &QList::constLast() const
リストの最後の項目への const リファレンスを返します。この関数は、リストが空でないことを前提としています。
constFirst()、isEmpty() およびlast()も参照 。
[noexcept]
template <typename AT> bool QList::contains(const AT &value) const
リストにvalue が含まれていればtrue
を返し、そうでなければfalse
を返す。
この関数は、値型がoperator==()
を実装している必要があります。
[noexcept]
template <typename AT = T> qsizetype QList::count(const AT &value) const
リスト内のvalue の出現回数を返す。
この関数は、値型がoperator==()
の実装を持っていることを必要とする。
[noexcept]
qsizetype QList::count() const
これはオーバーロードされた関数である。
size() と同じ。
[noexcept]
QList<T>::const_reverse_iterator QList::crbegin() const
リストの最初の項目を逆順で指す constSTL 形式の逆順イテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されると無効になります。
[noexcept]
QList<T>::const_reverse_iterator QList::crend() const
リストの最後のアイテムの直後を指す、 constSTL 形式の逆順イテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されると無効になります。
QList<T>::pointer QList::data()
リストに格納されているデータへのポインタを返します。このポインタを使用して、リスト内の項目にアクセスしたり変更したりすることができます。
例
QList<int> list(10); int *data = list.data(); for (qsizetype i = 0; i < 10; ++i) data[i] = 2 * i;
警告 例: 警告: ポインタは、切り離されたとき、またはQList が変更されたときに無効になります。
この関数は、C++のプレーンな配列を受け付ける関数にリストを渡すのに便利です。
constData() およびoperator[]()も参照 。
[noexcept]
QList<T>::const_pointer QList::data() const
これはオーバーロードされた関数である。
template <typename... Args> QList<T>::iterator QList::emplace(qsizetype i, Args &&... args)
位置i に新しい要素を挿入してコンテナを拡張する。この新しい要素は、args を引数としてインプレースで構築されます。
新しい要素へのイテレータを返します。
例
注意: 要素は、最初にインプレースで作成されることが保証されていますが、その後、正しい位置にコピーまたは移動される可能性があります。
emplaceBackも参照のこと 。
template <typename... Args> QList<T>::iterator QList::emplace(QList<T>::const_iterator before, Args &&... args)
これはオーバーロードされた関数である。
イテレータbefore が指す項目の前に新しい要素を作成します。この新しい要素は、args を引数としてインプレースで構築されます。
新しい要素へのイテレータを返します。
[noexcept]
bool QList::empty() const
この関数はSTLとの互換性のために提供されている。これはisEmpty() と等価で、リストが空の場合はtrue
を返し、そうでない場合はfalse
を返します。
QList<T>::iterator QList::end()
リストの最後のアイテムの直後を指すSTL 形式のイテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されると無効になります。
[noexcept]
QList<T>::const_iterator QList::end() const
これはオーバーロードされた関数である。
bool QList::endsWith(QList<T>::parameter_type value) const
このリストが空でなく、最後の項目がvalue に等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
QList<T>::iterator QList::erase(QList<T>::const_iterator pos)
イテレータpos が指す項目をリストから削除し、リストの次の項目へのイテレータを返します(end() かもしれません)。
要素の削除はリストの容量を維持し、割り当てられたメモリの量を減らすことはありません。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() を呼び出します。
QList<T>::iterator QList::erase(QList<T>::const_iterator begin, QList<T>::const_iterator end)
これはオーバーロードされた関数である。
begin からend までのすべての項目を削除します。呼び出し前にend が参照していたのと同じ項目へのイテレータを返します。
要素の削除はリストの容量を維持し、割り当てられたメモリの量を減らすことはありません。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() を呼び出す。
QList<T> &QList::fill(QList<T>::parameter_type value, qsizetype size = -1)
リスト内のすべてのアイテムにvalue を割り当てます。size が -1 (デフォルト) と異なる場合、リストはあらかじめsize にリサイズされます。
例:
QList<QString> list(3); list.fill("Yes"); // list: ["Yes", "Yes", "Yes"] list.fill("oh", 5); // list: ["oh", "oh", "oh", "oh", "oh"]
resize()も参照 。
T &QList::first()
リストの最初の項目への参照を返します。この関数は、リストが空でないことを前提としています。
last()、isEmpty() およびconstFirst()も参照 。
[since 6.0]
QList<T> QList::first(qsizetype n) const
このリストの最初のn 要素を含むサブリストを返す。
注意: n < 0 またはn >size() の場合の動作は未定義です。
この関数は Qt 6.0 で導入されました。
[noexcept]
const T &QList::first() const
これはオーバーロードされた関数である。
QList<T>::reference QList::front()
この関数は STL との互換性のために提供されている。first() と同等です。
[noexcept]
QList<T>::const_reference QList::front() const
これはオーバーロードされた関数である。
[noexcept]
template <typename AT> qsizetype QList::indexOf(const AT &value, qsizetype from = 0) const
インデックス位置from から前方を検索し、リスト内でvalue が最初に出現するインデックスの位置を返す。一致する項目がない場合は -1 を返します。
例
QList<QString> list{"A", "B", "C", "B", "A"}; list.indexOf("B"); // returns 1 list.indexOf("B", 1); // returns 1 list.indexOf("B", 2); // returns 3 list.indexOf("X"); // returns -1
この関数は、値型にoperator==()
の実装を必要とします。
lastIndexOf() およびcontains()も参照 。
QList<T>::iterator QList::insert(QList<T>::const_iterator before, qsizetype count, QList<T>::parameter_type value)
イテレータbefore が指すアイテムの前にvalue のcount コピーを挿入する。挿入されたアイテムの先頭を指すイテレータを返す。
QList<T>::iterator QList::insert(qsizetype i, qsizetype count, QList<T>::parameter_type value)
これはオーバーロードされた関数である。
リストのインデックス位置i にvalue のコピーcount を挿入する。
例
QList<double> list = {2.718, 1.442, 0.4342}; list.insert(1, 3, 9.9); // list: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]
[noexcept]
bool QList::isEmpty() const
リストのサイズが0の場合はtrue
を返し、それ以外の場合はfalse
を返す。
T &QList::last()
リストの最後の項目への参照を返します。この関数は、リストが空でないことを前提としています。
first()、isEmpty() およびconstLast()も参照 。
[since 6.0]
QList<T> QList::last(qsizetype n) const
このリストの最後のn 要素を含むサブリストを返す。
注意: n < 0 またはn >size() の場合の動作は未定義です。
この関数は Qt 6.0 で導入されました。
first() およびsliced()も参照してください 。
[noexcept]
const T &QList::last() const
これはオーバーロードされた関数である。
[noexcept]
template <typename AT> qsizetype QList::lastIndexOf(const AT &value, qsizetype from = -1) const
インデックス位置from から後方へ検索して、リスト内で値value が最後に出現するインデックス位置を返す。from が -1 (デフォルト) の場合、検索は最後の項目から始まります。一致する項目がない場合は -1 を返します。
例
QList<QString> list = {"A", "B", "C", "B", "A"}; list.lastIndexOf("B"); // returns 3 list.lastIndexOf("B", 3); // returns 3 list.lastIndexOf("B", 2); // returns 1 list.lastIndexOf("X"); // returns -1
この関数は、値型にoperator==()
の実装を必要とします。
indexOf()も参照 。
[noexcept]
qsizetype QList::length() const
QList<T> QList::mid(qsizetype pos, qsizetype length = -1) const
pos の位置から始まる、このリストの要素を含むサブリストを返します。length が -1 (デフォルト) の場合、pos 以降のすべての要素が含まれます。そうでない場合、length の要素 (length 以下の要素がある場合は残りのすべての要素) が含まれます。
void QList::move(qsizetype from, qsizetype to)
インデックス位置from にある項目をインデックス位置to に移動する。
[noexcept]
void QList::pop_back()
この関数は STL との互換性のために提供されている。removeLast() と同等です。
[noexcept]
void QList::pop_front()
この関数は STL との互換性のために提供されている。removeFirst() と同等です。
void QList::push_back(QList<T>::parameter_type value)
この関数は STL との互換性のために用意されている。append(value) と同等です。
void QList::push_back(QList<T>::rvalue_ref value)
これはオーバーロードされた関数である。
QList<T>::reverse_iterator QList::rbegin()
リストの最初の項目を指すSTL 形式の逆順イテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されると無効になります。
[noexcept]
QList<T>::const_reverse_iterator QList::rbegin() const
これはオーバーロードされた関数である。
void QList::remove(qsizetype i, qsizetype n = 1)
インデックス位置i から、n 要素をリストから削除します。
要素を削除してもリストの容量は維持され、割り当てられたメモリの量は減らない。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() を呼び出す。
insert()、replace()、fill()も参照 。
template <typename AT = T> qsizetype QList::removeAll(const AT &t)
比較結果がt と等しいすべての要素をリストから削除します。削除された要素があれば、その数を返します。
要素を削除してもリストの容量は維持され、割り当てられたメモリの量は減りません。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() をコールする。
removeOne()も参照 。
void QList::removeAt(qsizetype i)
インデックス位置i の要素を削除する。と同じです。
remove(i);
要素を削除してもリストの容量は維持され、割り当てられたメモリの量は減りません。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() を呼び出します。
remove()も参照 。
[noexcept]
void QList::removeFirst()
リストの最初の項目を削除する。この関数を呼び出すことは、remove(0)を呼び出すことと同じである。リストは空であってはならない。リストが空になる可能性がある場合は、この関数を呼び出す前にisEmpty() を呼び出してください。
要素を削除しても、リストの容量は維持され、割り当てられたメモリの量は減りません。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() を呼び出す。
remove()、takeFirst()、isEmpty()も参照 。
[since 6.1]
template <typename Predicate> qsizetype QList::removeIf(Predicate pred)
述語pred が真を返す全ての要素をリストから削除します。削除された要素があれば、その数を返します。
この関数は Qt 6.1 で導入されました。
removeAll()も参照してください 。
[noexcept]
void QList::removeLast()
リストの最後の項目を削除する。この関数を呼び出すと、remove(size() - 1) を呼び出すのと同じことになる。リストは空であってはならない。リストが空になる可能性がある場合は、この関数を呼び出す前にisEmpty() を呼び出してください。
要素を削除しても、リストの容量は維持され、割り当てられたメモリの量は減らない。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() を呼び出す。
remove()、takeLast()、removeFirst()、isEmpty()も参照 。
template <typename AT = T> bool QList::removeOne(const AT &t)
t と等しい最初の要素をリストから削除します。要素が実際に削除されたかどうかを返します。
要素の削除はリストの容量を維持し、割り当てられたメモリの量を減らすことはありません。余分な容量を削除し、できるだけ多くのメモリを解放するには、squeeze() を呼び出す。
removeAll()も参照 。
QList<T>::reverse_iterator QList::rend()
リストの最後の項目の直後を指すSTL 形式の逆順イテレータを返します。
警告 返されたイテレータは、デタッチ時またはQList が変更されたときに無効になります。
[noexcept]
QList<T>::const_reverse_iterator QList::rend() const
これはオーバーロードされた関数である。
void QList::reserve(qsizetype size)
少なくともsize 要素分のメモリを確保しようとする。
リストの大きさがあらかじめわかっている場合は、再割り当てやメモリの断片化を防ぐためにこの関数を呼び出すべきである。リストのサイズを頻繁に変更すれば、パフォーマンスも向上する可能性が高い。
どれだけの容量が必要なのか疑わしい場合は、通常、size のような上限値を使用するか、厳密な上限値を使用するとこれよりもはるかに大きくなる場合は、最も可能性の高いサイズの高い推定値を使用する方がよい。size が過小評価である場合、予約されたサイズを超えると、リストは必要に応じて大きくなります。
警告: reserve() はメモリを予約しますが、リストのサイズは変更しません。現在のリストの終端を越えてデータにアクセスすることは、未定義の動作です。現在のリストの終端を超えてメモリーにアクセスする必要がある場合は、resize() を使用してください。
squeeze()、capacity()、resize()も 参照。
[since 6.8]
void QList::resizeForOverwrite(qsizetype size)
リストのサイズをsize に設定する。size が現在のサイズより小さい場合、要素は末尾から削除される。size が現在のサイズより大きい場合、要素は末尾に追加される。QList は、これらの新しい要素を初期化しないように試みる。
具体的には
Qt::Uninitialized
を受け付けるコンストラクタがT
にある場合、そのコンストラクタが要素の初期化に使われる;- そうでない場合、各要素はデフォルトで構築される。それ以外の場合、各要素はデフォルトで構築されます。些細に構築可能な型(
int
、float
など)については、これは初期化しないことと同じです。
この関数は Qt 6.8 で導入されました。
void QList::shrink_to_fit()
この関数は STL との互換性のために提供されている。squeeze() と同等です。
[noexcept]
qsizetype QList::size() const
リストに含まれる項目の数を返します。
[since 6.0]
QList<T> QList::sliced(qsizetype pos, qsizetype n) const
pos の位置から始まる、このリストのn 要素を含むサブリストを返す。
注: pos < 0,n < 0, またはpos +n >size() の場合、動作は未定義です。
この関数は Qt 6.0 で導入されました。
[since 6.0]
QList<T> QList::sliced(qsizetype pos) const
これはオーバーロードされた関数である。
このリストの要素を含むサブリストを、pos の位置から始まり、その終わりまで拡張して返します。
注意: pos < 0 またはpos >size() の場合の動作は未定義です。
この関数は Qt 6.0 で導入されました。
void QList::squeeze()
アイテムの保存に不要なメモリを解放する。
この関数の唯一の目的は、QList'のメモリ使用量を微調整する手段を提供することである。一般に、この関数を呼び出す必要はほとんどない。
bool QList::startsWith(QList<T>::parameter_type value) const
このリストが空でなく、最初の項目がvalue に等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
[noexcept]
void QList::swap(QList<T> &other)
このリストをother と入れ替える。この操作は非常に速く、失敗することはない。
void QList::swapItemsAt(qsizetype i, qsizetype j)
インデックス位置i の項目を、インデックス位置j の項目と交換する。この関数は、i とj の両方が 0 以上size() 未満であると仮定する。失敗を避けるには、i とj の両方が少なくとも 0 であり、size() よりも小さいことをテストする。
T QList::takeAt(qsizetype i)
インデックス位置i の要素を削除して返す。
と同じ。
T t = at(i); remove(i); return t;
takeFirst() およびtakeLast()も参照 。
QList<T>::value_type QList::takeFirst()
リストの最初の項目を削除して返します。この関数は、リストが空でないことを前提とする。失敗を避けるには、この関数を呼び出す前にisEmpty() を呼び出す。
takeLast() およびremoveFirst()も参照 。
QList<T>::value_type QList::takeLast()
リストの最後の項目を削除して返します。この関数は、リストが空でないことを前提とする。失敗を避けるには、この関数を呼び出す前にisEmpty() を呼び出します。
戻り値を使用しない場合は、removeLast() の方が効率的です。
takeFirst() およびremoveLast()も参照 。
T QList::value(qsizetype i) const
リストのインデックス位置i にある値を返す。
インデックスi が範囲外の場合、この関数はデフォルトで構成された値を返します。i が範囲内であることが確実な場合は、代わりにat() を使用すると若干高速になります。
at() およびoperator[]()も参照のこと 。
T QList::value(qsizetype i, QList<T>::parameter_type defaultValue) const
これはオーバーロードされた関数である。
インデックスi が範囲外の場合、この関数はdefaultValue を返す。
bool QList::operator!=(const QList<T> &other) const
other がこのリストと等しくない場合はtrue
を返し、そうでない場合はfalse
を返す。
2つのリストが同じ順序で同じ値を含む場合、等しいとみなされる。
この関数は、値型がoperator==()
を実装している必要があります。
operator==()も参照してください 。
QList<T> &QList::operator+=(const QList<T> &other)
other リストの項目をこのリストに追加し、このリストへの参照を返す。
[since 6.0]
QList<T> &QList::operator+=(QList<T> &&other)
これはオーバーロードされた関数です。
この関数は Qt 6.0 で導入されました。
operator+() およびappend()も参照してください 。
QList<T> &QList::operator+=(QList<T>::parameter_type value)
これはオーバーロードされた関数である。
リストにvalue を追加する。
append() およびoperator<<()も参照 。
QList<T> &QList::operator+=(QList<T>::rvalue_ref value)
これはオーバーロードされた関数である。
append() およびoperator<<()も参照のこと 。
bool QList::operator<(const QList<T> &other) const
このリストがレキシカルに otherより小さい場合はtrue
を返し、そうでない場合はfalse
を返す。
この関数は、値型がoperator<()
を実装している必要があります。
QList<T> &QList::operator<<(QList<T>::parameter_type value)
value をリストに追加し、このリストへの参照を返す。
append() およびoperator+=()も参照のこと 。
QList<T> &QList::operator<<(const QList<T> &other)
other をリストに追加し、リストへの参照を返す。
[since 6.0]
QList<T> &QList::operator<<(QList<T> &&other)
これはオーバーロードされた関数です。
この関数は Qt 6.0 で導入されました。
QList<T> &QList::operator<<(QList<T>::rvalue_ref value)
これはオーバーロードされた関数である。
append() およびoperator+=()も参照のこと 。
bool QList::operator<=(const QList<T> &other) const
このリストが語彙的に other以下の場合はtrue
を返し、そうでない場合はfalse
を返す。
この関数は、値型がoperator<()
を実装している必要があります。
[default]
QList<T> &QList::operator=(QList<T> &&other)
Move-other をこのQList インスタンスに割り当てる。
[default]
QList<T> &QList::operator=(const QList<T> &other)
このリストにother を割り当て、このリストへの参照を返す。
QList<T> &QList::operator=(std::initializer_list<T> args)
args の値のコレクションをこのQList インスタンスに割り当てます。
bool QList::operator==(const QList<T> &other) const
other がこのリストと等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
2つのリストが同じ順序で同じ値を含む場合、等しいとみなされる。
この関数は、値型がoperator==()
を実装している必要があります。
operator!=()も参照してください 。
bool QList::operator>(const QList<T> &other) const
このリストがレキシカルに otherより大きい場合はtrue
を返し、そうでない場合はfalse
を返す。
この関数は、値型がoperator<()
を実装している必要があります。
bool QList::operator>=(const QList<T> &other) const
このリストがレキシカルに other以上であればtrue
を返し、そうでなければfalse
を返す。
この関数は、値型がoperator<()
を実装している必要があります。
QList<T>::reference QList::operator[](qsizetype i)
インデックス位置i にあるアイテムを変更可能な参照として返す。
i はリスト内の有効なインデックス位置でなければなりません(すなわち、0 <= < () )。i size
constでない演算子を使用すると、QList がディープコピーされる可能性があることに注意。
[noexcept]
QList<T>::const_reference QList::operator[](qsizetype i) const
これはオーバーロードされた関数である。
at(i) と同じ。
関連する非会員
[since 6.1]
template <typename T, typename AT> qsizetype erase(QList<T> &list, const AT &t)
リストlist から、比較結果がt と等しい要素をすべて削除する。削除された要素があれば、その数を返す。
注: QList::removeAll とは異なり、t がlist 内の要素への参照であることは許されない。そうでないことを確認できない場合は、t のコピーを取り、そのコピーでこの関数を呼び出してください。
この関数は Qt 6.1 で導入されました。
QList::removeAll() およびerase_ifも参照してください 。
[since 6.1]
template <typename T, typename Predicate> qsizetype erase_if(QList<T> &list, Predicate pred)
リストlist から、述語pred が真を返す全ての要素を削除します。削除された要素があれば、その数を返します。
この関数は Qt 6.1 で導入されました。
eraseも参照してください 。
[noexcept(...)]
template <typename T> size_t qHash(const QList<T> &key, size_t seed = 0)
seed を計算の種として、key のハッシュ値を返す。
型T
は qHash() がサポートしていなければならない。
注: noexcept(qHashRange(key.cbegin(), key.cend(), seed))
がtrue
の場合、この関数は noexcept となる。
template <typename T> QDataStream &operator<<(QDataStream &out, const QList<T> &list)
リストlist をストリームout に書き込む。
この関数は、operator<<()
を実装する値型を必要とします。
QDataStream 演算子のフォーマットも参照してください 。
template <typename T> QDataStream &operator>>(QDataStream &in, QList<T> &list)
ストリームin からリストをlist に読み込む。
この関数は、operator>>()
を実装する値型を必要とします。
QDataStream 演算子のフォーマットも参照してください 。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.