96SEO 2026-02-23 13:15 2
std::vector1.1.1vector的定义1.1.2vector容器的初始化1.1.3vector容器内元素的访问和修改1.1.4vector中的常用函数

std::string1.2.1string的定义1.2.2string的初始化1.2.3string中元素的访问和修改1.2.4string中连接字符串1.2.5string中的常用函数
std::map1.3.1map的定义1.3.2map的初始化1.3.3map的遍历1.3.4map中元素的访问和修改1.3.5map中的常用函数
1.4std::pair1.4.1pair的定义和初始化1.4.2pair的访问与修改1.4.3pair的比较
1.5std::set1.5.1set的定义1.5.2set的初始化1.5.3set的插入与删除1.5.4set的遍历1.5.5set中的常用函数
1.6std::stack1.6.1stack的初始化1.6.2stack的常用函数
1.7std::queue1.7.1queue的初始化1.7.2queue的常用函数
library标准模板库是一套强大的C模板类提供了通用了模板类和函数这些模板类和函数可以实现多种流行和常用的算法和数据结构如向量
组件描述容器Containers容器是用来管理某一类对象的集合。
C
等。
算法Algorithms算法作用于容器。
它们提供了执行各种操作的方式包括对容器内容执行初始化、排序、搜索和转换等操作。
迭代器Iterators迭代器用于遍历对象集合的元素。
这些集合可能是容器也可能是容器的子集。
std::vector向量是一种变长数组类似于python中的list是一种可以“自动改变数组长度的数组”。
在要使用std::vector的时候我们需要添加头文件
//如果没有这句我们在使用时必须指明命名空间std::vector1.1.1vector的定义
//这里定义了一个二维的向量1.1.2vector容器的初始化
vector容器可以使用C中的初始化器{}来进行初始化vector容器也可以使用构造函数()来进行初始化
//创建一个整数向量为1,2,3,4,51.1.3vector容器内元素的访问和修改
{my_vector.push_back(i1);}std::vectorint::iterator
push_back()在vector的末尾添加元素类似python中list.append()方法pop_back()删除vector末尾的元素类似python中list.pop()方法但是没有返回值size()返回vector的长度类似python中的len(list)clear()清空vector中的所有元素insert()在指定的地址插入元素erase()删除指定地址的元素
std::vectorint::push_back(const
//使用push_back向vector的末尾添加元素}for
//使用push_back向vector的末尾添加10个元素}for
//使用push_back向vector的末尾添加10个元素}cout
//使用push_back向vector的末尾添加10个元素}for
endl;myVector.insert(myVector.begin(),
endl;myVector.insert(myVector.begin()
};myVector.insert(myVector.end(),
std::string字符串是C标准库中用于表示和字符串的类它提供了许多成员函数和操作符用于处理字符串的各种操作非常类似于Python中的str数据类型当我们使用std::string的时候我们需要提前包含头文件
//如果没有这句我们在使用时必须指明命名空间std::string
std::string可以直接使用字符串字面量来进行初始化或者使用另一个字符串变量来进行初始化例如
std::string有两种访问和修改字符的方式std::string和Python中str数据类型的不同点在于Pythonstr类型不支持原地修改而std::string支持str类型支持切片操作但是std::string不支持切片操作可以使用std::string::substr()方法来代替。
std::string可以像Python中str一样进行使用进行拼接使用append()方法在末尾添加字符。
World!使用append()进行拼接在原字符串的基础上进行添加
length()获取字符串的长度size()获取字符串的长度substr()获取字符串的子串find()查找子串的位置
const;substr()是用于获得子串的函数这个区间是左闭右闭的。
const;find()是用于查找子串的位置返回子串首元出现在母船中的位置。
std::map是一种键值对容器在python中这种容器被称为字典dict在std::map中数据都是成对出现的每一对中的第一个值被称为关键字key每个关键字只能在std::map中出现一次第二个称之为关键的对应值。
在使用std::map之前我们需要包含头文件
//如果没有这句我们在使用时必须指明命名空间std::map1.3.1map的定义
std::map是一个模板类需要的关键字和存储对象两个模板参数定义如下
并不直接支持使用下标进行遍历因为它是一种按键排序的关联容器而不是顺序容器。
使用下标遍历会导致元素的顺序混乱不符合
举个例子初始化一个std::map然后使用iterator遍历其中的键值对key-value
上述代码我们在指定迭代器的时候手动去指定迭代器的类型这样十分的麻烦我们可以使用auto关键字来自动生成符合条件的迭代器例如
举个例子初始化一个std::map然后使用std::pair遍历其中的键值对key-value
可以使用[]来访问并修改std::map中的元素就类似于Python的dict一样举个例子
insert()向map中插入一个键值对erase()删除指定键的键值对find()查找指定键的迭代器count()返回指定键在map中的出现次数size()返回map的长度empty()检查map是否为空clear()清空map中的所有键值对beign()返回指向第一个键值对的迭代器end()返回指向最后一个键值对的迭代器
这里有很多函数的用法于之前介绍string和vector时的用法类似这里就不再重复介绍了
//插入单个键值对myMap.insert(pairstring,
//插入std::pair键值对myMap.insert(make_pair(Six,
myMap.find(Four);myMap.erase(start,
std::pair是C标准库中的模板类用于表示两个值的有序对它可以存储不同类型的值并提供了一些成员函数和操作符来访问和操作这两个值在使用std::pair之前我们需要导入头文件
但是当我们使用了标准输入输出流的时候就已经包括了该头文件无需重复导入1.4.1pair的定义和初始化
使用auto自动推断构建后的类型1.4.2pair的访问与修改
std::set是C标准库中的容器类用于存储唯一且自动排序的元素集合类似于Python中的set。
要使用std::set我们需要包含以下头文件
使用迭代器范围初始化set使用另一个std::set进行初始化
使用另一个std::set进行初始化1.5.3set的插入与删除
在C标准库中std::set是基于红黑树实现的关联容器其中元素按照特定的排序顺序规则进行存储和访问所以std::set不支持使用[]通过下标来进行访问对于std::set要访问其中的元素我们可以使用迭代器或者范围-based
count()返回指定键在set中的出现次数find()查找指定值的迭代器size()获取元素的数量empty()判断set是否为空clear()清空set
std::set::count()会返回查找元素在容器中的次数这里是std::set不允许有重复的元素所以如果查找到元素的话就返回1没有查找到元素就返回0。
std::set::find()会返回查找元素的迭代器如果没找到则遍历到std::set::end()
在C中std::stack是一个容器适配器它基于其他容器实现了栈的功能栈是一种先进后出first
FILO的数据结构要使用std::stack我们得先包含头文件
std::stack的使用过程中一般使用默认初始化即不给std::stack赋值std::stack不支持使用花括号初始化器{}来进行初始化但是std::stack可以使用其他容器来进行初始化比如std::deque这种初始化方式会调用适当的构建函数来构建栈对象。
push()向栈顶添加元素pop()弹出栈顶元素请注意无返回值top()访问栈顶元素empty()判断栈是否为空size()获取栈中元素的数量
栈顶元素出栈myStack.pop();myStack.pop();std::cout
在C标准库中std::queue是一个容器适配器它提供了队列的功能queue队列是一种先进先出first
out的数据结构std::queue通过封装std:deque来实现队列操作使用std::queue需要包含头文件
myQueue;std::queue也可以使用花括号初始化器{}来进行初始化
push()在队尾添加元素front()访问队首元素pop()移除队首元素无返回值empty()检查是否为空size()返回队列中元素数量
添加元素myQueue.push(2);myQueue.push(3);std::cout
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback