エクスポート (0) 印刷
すべて展開
展開 最小化
この記事は機械翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。 詳細情報
訳文
原文

list::assign (STL のサンプル)

Visual C++ で list::assign の標準テンプレート ライブラリは (STL) 関数を使用する方法について説明します。

void assign(
   const_iterator First,
   const_iterator Last
);
void assign(
   size_type n,
   const T& x = T( )
);
iterator erase(
   iterator It
);
iterator erase(
   iterator First,
   iterator Last
); bool empty( ) const;

メモ メモ

プロトタイプのクラスまたはパラメーター名はヘッダー ファイルのバージョンと一致しません。 一部は読みやすさが向上するように変更されました。

一つ目のメンバー関数は、シーケンス[FirstLast) の順this 制御*を置き換えます。 2 つ目のメンバー関数は値 x.の n 個の要素の繰り返しの順序を制御this *を置き換えます。 3 つ目のメンバー関数は が指す被制御シーケンスの要素を削除します。 4 つ目のメンバー関数は、範囲[FirstLast) の被制御シーケンスの要素を削除します。 そのような要素が存在しない場合はどちらも、要素を削除した後に残った一つ目の要素を指定する反復子または 終了 最後のメンバー関数は、空の被制御シーケンスの true を返します。

// assign.cpp 
// compile with: /EHsc
//
// Shows various ways to assign and erase elements
//        from a list<T>.
//
// Functions:
//    list::assign
//    list::empty
//    list::erase

#include <list>
#include <iostream>

using namespace std ;

typedef list<int> LISTINT;

int main()
{
    LISTINT listOne;
    LISTINT listAnother;
    LISTINT::iterator i;

    // Add some data
    listOne.push_front (2);
    listOne.push_front (1);
    listOne.push_back (3);

    listAnother.push_front(4);

    listAnother.assign(listOne.begin(), listOne.end());

    // 1 2 3
    for (i = listAnother.begin(); i != listAnother.end(); ++i)
        cout << *i << " ";
    cout << endl;

    listAnother.assign(4, 1);

    // 1 1 1 1
    for (i = listAnother.begin(); i != listAnother.end(); ++i)
        cout << *i << " ";
    cout << endl;

    listAnother.erase(listAnother.begin());

    // 1 1 1
    for (i = listAnother.begin(); i != listAnother.end(); ++i)
        cout << *i << " ";
    cout << endl;

    listAnother.erase(listAnother.begin(), listAnother.end());
    if (listAnother.empty())
        cout << "All gone\n";
}

1 2 3 
1 1 1 1 
1 1 1 
All gone

ヘッダー: <list>

コミュニティの追加

追加
表示:
© 2014 Microsoft