Visual C++ で list::list STL 関数を使用する
この記事では、Visual C++ で STL 関数を使用する list::list
方法について説明します。
元の製品バージョン: Visual C++
元の KB 番号: 158091
必須ヘッダー
<list>
プロトタイプ
explicit list(const A& al = A());
explicit list(size_type n, const T& v = T(), const A& al = A());
list(const list& x);
list(const_iterator first, const_iterator last, const A& al = A());
注:
プロトタイプのクラス/パラメーター名が、ヘッダー ファイルのバージョンと一致しない可能性があります。 読みやすさを向上させるために変更されたものもあります。
説明
最初のコンストラクターは、空の初期被制御シーケンスを指定します。 2 番目のコンストラクターは、値 x
の要素のn
繰り返しを指定します。 3 番目のコンストラクターは、 によって制御されるシーケンスのコピーを x
指定します。 最後のコンストラクターは、シーケンス (first
、 last
) を指定します。 すべてのコンストラクターは、アロケーター オブジェクト al
、または コピー コンストラクター の をアロケーターに格納し、 x.get_allocator()
被制御シーケンスを初期化します。
サンプル コード
//////////////////////////////////////////////////////////////////////
// Compile options needed: -GX
// list.cpp : demonstrates the different constructors for list<T>
// Functions:
// list::list
// Copyright (c) 1996 Microsoft Corporation. All rights reserved.
//////////////////////////////////////////////////////////////////////
#include <list>
#include <string>
#include <iostream>
#if _MSC_VER > 1020 // if VC++ version is > 4.2
using namespace std; // std c++ libs implemented in std
#endif
typedef list<string, allocator<string> > LISTSTR;
// Try each of the four constructors
void main()
{
LISTSTR::iterator i;
LISTSTR test; // default constructor
test.insert(test.end(), "one");
test.insert(test.end(), "two");
LISTSTR test2(test); // construct from another list
LISTSTR test3(3, "three"); // add several <T>'s
LISTSTR test4(++test3.begin(), // add part of another list
test3.end());
// Print them all out
// one two
for (i = test.begin(); i != test.end(); ++i)
cout << *i << " ";
cout << endl;
// one two
for (i = test2.begin(); i != test2.end(); ++i)
cout << *i << " ";
cout << endl;
// three three three
for (i = test3.begin(); i != test3.end(); ++i)
cout << *i << " ";
cout << endl;
// three three
for (i = test4.begin(); i != test4.end(); ++i)
cout << *i << " ";
cout << endl;
}
プログラム出力は次のとおりです。
one two
one two
three three three
three three
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示