C ++列表,获取列表中的元素数量?

| 快速提问。 我有一个列表,我只向
list
添加了一个元素。 但是当我打印出
myList.size()
时,它返回
18
吗?即使有一个要素? 要添加我的元素,我使用:
myList.push_back(element)
;
已邀请:
§23.3.6说: 成员函数“ 4”返回容器中元素的数量。 这意味着 1)您的C ++环境已损坏,或者 2)您已经以某种方式将更多元素添加到列表中。 不幸的是,由于您尚未发布足够的信息,因此很难确定是哪种情况。最好是一个完整的小型示例,这些示例演示您正在尝试做的事情,对将要发生的事情以及您将要发生的事情的描述。
我可以想到的另一种可能性是,使用以下构造函数创建了具有有限大小的列表:
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()
,然后推入元素,最后检查尺寸。

要回复问题请先登录注册