当前位置: 首页 > news >正文

做网站域名是什么意思做网站买了域名后

做网站域名是什么意思,做网站买了域名后,上海商标设计,网站怎么做弹幕播放器摘要 C 标准库中的 std::list 是一种双向链表容器&#xff0c;它允许在常数时间内进行插入和删除操作&#xff0c;每个元素包含一个指向前一个和后一个元素的指针。这给我们开发提供了高效的插入和删除操作。 引入头文件 要使用 std::list&#xff0c;需要包含头文件 <li…

摘要

C++ 标准库中的 `std::list` 是一种双向链表容器,它允许在常数时间内进行插入和删除操作,每个元素包含一个指向前一个和后一个元素的指针。这给我们开发提供了高效的插入和删除操作。

引入头文件

要使用 `std::list`,需要包含头文件 `<list>`:

#include <list>

创建和初始化

#include <iostream>
#include <list>int main() {std::list<int> l1;                      // 默认构造函数std::list<int> l2(5, 10);               // 创建包含 5 个值为 10 的元素的列表std::list<int> l3 = {1, 2, 3, 4, 5, 6}; // 列表初始化// 输出列表 l3 的内容for (int n : l3) {std::cout << n << ' ';}std::cout << std::endl;return 0;
}

常用方法和操作

1. 插入和删除元素

#include <iostream>
#include <list>int main() {std::list<int> l = {1, 2, 3, 4, 5, 6};// 在末尾添加元素l.push_back(6);// 在开头添加元素l.push_front(0);// 在第三个位置插入元素auto it = l.begin();std::advance(it, 3); // 前进 3 个位置l.insert(it, 99);// 删除开头的元素l.pop_front();// 删除末尾的元素l.pop_back();// 删除特定位置的元素it = l.begin();std::advance(it, 2); // 前进 2 个位置l.erase(it);// 输出列表 l 的内容for (int n : l) {std::cout << n << ' ';}std::cout << std::endl;return 0;
}

2. 访问元素

`std::list` 不支持随机访问(即不支持 `operator[]`),但是可以使用迭代器遍历和访问元素:

#include <iostream>
#include <list>int main() {std::list<int> l = {1, 2, 3, 4, 5, 6};// 使用迭代器遍历for (auto it = l.begin(); it != l.end(); ++it) {std::cout << *it << ' ';}std::cout << std::endl;// 使用范围 for 循环遍历for (int n : l) {std::cout << n << ' ';}std::cout << std::endl;return 0;
}

3. 反向遍历

#include <iostream>
#include <list>int main() {std::list<int> l = {1, 2, 3, 4, 5, 6};// 反向遍历for (auto it = l.rbegin(); it != l.rend(); ++it) {std::cout << *it << ' ';}std::cout << std::endl;return 0;
}

4. 其它用法

#include <iostream>
#include <list>int main() {std::list<int> l = {1, 2, 3, 4, 5, 6};// 获取列表大小std::cout << "Size: " << l.size() << std::endl;// 检查是否为空if (l.empty()) {std::cout << "List is empty" << std::endl;} else {std::cout << "List is not empty" << std::endl;}// 清空列表l.clear();std::cout << "Size after clear: " << l.size() << std::endl;return 0;
}

进阶使用技巧

1. 合并和排序

#include <iostream>
#include <list>int main() {std::list<int> l1 = {1, 3, 5, 7};std::list<int> l2 = {2, 4, 6, 8};// 合并两个已排序的列表l1.merge(l2);// 排序l1.sort();// 反转l1.reverse();// 输出列表 l1 的内容for (int n : l1) {std::cout << n << ' ';}std::cout << std::endl;return 0;
}

2. 去重

#include <iostream>
#include <list>int main() {std::list<int> l = {1, 2, 2, 3, 3, 3, 4, 5};// 必须先排序,然后去重l.sort();l.unique();// 输出去重后的列表 l 的内容for (int n : l) {std::cout << n << ' ';}std::cout << std::endl;return 0;
}

自定义比较函数

在 `sort`、`merge` 等方法中,可以传递自定义比较函数:

#include <iostream>
#include <list>bool customCompare(int a, int b) {return a > b; // 降序排列
}int main() {std::list<int> l = {1, 3, 2, 5, 4};// 使用自定义比较函数排序l.sort(customCompare);// 输出排序后的列表 l 的内容for (int n : l) {std::cout << n << ' ';}std::cout << std::endl;return 0;
}

总结

`std::list` 是 C++ 标准库中功能强大且灵活的双向链表容器,适用于需要频繁插入和删除操作的场景。在我们实际开发中,根据项目的具体需求选择合适的容器,比如‘std::forward_list’等,可以显著提高代码性能和可维护性。

引用

std::list - cppreference.com

http://www.yayakq.cn/news/630943/

相关文章:

  • 做网站私活工作1月工资257元
  • 封面设计网站万户网站做的怎样
  • 建设网站的公司哪家好wordpress代码创建子站点
  • 北京企业建网站小程序自助建站
  • 昆明网站seo服务在中国备案的网站服务器
  • 衡阳商城网站制作湖州建设局投标网站
  • 站长统计 站长统计网站建设的项目描述
  • 梧州网站建设现在有专业做海鲜的网站没有
  • 东营网站建设怎么建设网站开发有啥作用
  • 学校要求做网站硬件开发入门
  • 北京天润建设工程有限公司网站做外贸的网站简称为什么网站
  • 原材料价格查询网站2022新闻热点事件简短30条
  • 纪检监察网站建设情况汇报黄冈推广平台
  • 医疗网站的运营汕头龙湖网站建设
  • 百度网站优化外包增加wordpress阅读量
  • 重庆购物网站建设网站开发与rest
  • 装饰公司网站建设流程网站建设 网站优化营销型网站建设专家
  • 东莞黄江做网站公司网页打不开视频
  • 虚拟机 网站建设wordpress首页多样式
  • 集团网站 备案仿win8 网站模版
  • 北京市建设工程教育考试网站Centos建网站必须域名
  • 响应式网站建设论文网页转向功能网站
  • 北京二手房网站中国商标商标查询网
  • 网站开发维护花费阳江网站网站建设
  • 事件网站推广门户网站栏目建设
  • 萝岗手机网站建设软件开发工程师证书有用吗
  • 做购物网站能否生存flash个人网站动画
  • 外国建筑网站福州关键词自动排名
  • 城阳 网站建设哪些官网用wordpress
  • 青浦做网站公司主流大型网站开发语言调查