获取列表中元素的个数

C++ list, get number of elements in a list?

本文关键字:元素 列表 获取      更新时间:2023-10-16

快速提问。我有一个列表,我只是在list中添加了一个元素。但是当我输出myList.size()时,它返回的是18 ?即使只有一个元素?

添加元素:myList.push_back(element);

§23.3.6说:

成员函数size()返回容器中元素的个数。

这意味着

  • 1)你有一个坏的c++环境,或者

不幸的是,很难判断是哪种情况,因为你没有发布足够的信息。最好是一个小的、完整的例子,说明你正在尝试做什么,描述发生了什么,以及你期望发生什么。

我能想到的另一种可能性是使用以下构造函数创建具有有限大小的列表:

explicit list ( size_type n, const T& value= T(), const Allocator& = Allocator() );

如果我没有错,你想做这样的事情…我进行了一个快速搜索,发现了以下内容…

int main ()
{
    list<int> myints;
    cout << "0. size: " << (int) myints.size() << endl;
    for (int i=0; i<10; i++) myints.push_back(i);
    cout << "1. size: " << (int) myints.size() << endl;
    myints.insert (myints.begin(),10,100);
    cout << "2. size: " << (int) myints.size() << endl;
    myints.pop_back();
    cout << "3. size: " << (int) myints.size() << endl;
    return 0;
}

首先执行MyList.clear(),然后push元素,最后检查大小