MFC List中是否包含指定元素, List超详细介绍

本文详细介绍了MFC中的List容器,包括其使用方法和如何检查List中是否包含特定元素,重点探讨了C++在MFC环境下操作List的相关技巧。
摘要由CSDN通过智能技术生成
//List中是否包含指定元素 
bool ListStrContain(list<CString> ListStr, CString ContainStr)
{
    list<CString>::iterator iter;
    for (iter = ListStr.begin(); iter != ListStr.end(); iter++)  //使用迭代器进行遍历 
    {
        if (*iter == ContainStr)
        {
            return true;
        }
    }
    return false;
}
构造函数:

list() 构造空的list
list (size_type n, const value_type& val = value_type()) 构造的list中包含n个值为val的元素
list (const list& x) 拷贝构造函数
list (InputIterator first, InputIterator last)[first, last)区间中的元素构造list
迭代器:

begin() 返回第一个元素的迭代器
end() 返回最后一个元素下一个位置的迭代器
rbegin() 返回第一个元素的reverse_iterator,即end位置
rend() 返回最后一个元素下一个位置的reverse_iterator,即begin位置
cbegin() (C++11) 返回第一个元素的cosnt_iterator
cend() (C++11) 返回最后一个元素下一个位置的const_iterator
crbegin() (C++11)crend()位置
crend() (C++11)crbegin()位置
 capacity:

bool empty() const 检测list是否为空,是返回true,否则返回false
size_t size() const 返回list中有效节点的个数
函数:

void push_front (const value_type& val)  在list首元素前插入值为 val的元素
void pop_front() 删除list中第一个元素
void push_back (const value_type& val)   在list尾部插入值为val的元素
void pop_back() 删除list中最后一个元素
iterator insert (iterator position, const value_type& val)    在list position 位置中插 入值为val的元素
void insert (iterator position, size_type n, const value_type& val)    在list position位置插入n 个值为val的元素
void insert (iterator position, InputIterator first, InputIterator last)    在list position位置插入 [first, last)区间中元素
iterator erase (iterator position)    删除list position位置的 元素
iterator erase (iterator first, iterator last)   删除list中[first, last)区 间中的元素
void swap (list& x)   交换两个list中的元素
void resize (size_type n, value_type val = value_type())   将list中有效元素个数改变 到n个,多出的元素用val 填充
void clear() 清空list中的有效元素
注:

push_back尾插:先构造好元素,然后将元素拷贝到节点中,插入时先调构造函数,再调拷贝构造函数

emplace_back尾插:先构造节点,然后调用构造函数在节点中直接构造对象

emplace_back比push_back更高效,少了一次拷贝构造函数的调用 

原文链接:https://blog.csdn.net/qq_42659468/article/details/100010414

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值