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

DW做的网站加载慢电影网站建设目的

DW做的网站加载慢,电影网站建设目的,网站登录不上,网站制作视频教程下载文章目录 std::vector使用指南1 不同版本提供的能力基础:C98 / C03 提供的成员函数C11 新增的成员函数C14:基本无变化(主要是标准库泛化,非 vector 成员变化)C17 引入的新特性(间接影响)C20 新增…

文章目录

  • std::vector使用指南
    • 1 不同版本提供的能力
      • 基础:C++98 / C++03 提供的成员函数
      • C++11 新增的成员函数
      • C++14:基本无变化(主要是标准库泛化,非 vector 成员变化)
      • C++17 引入的新特性(间接影响)
      • C++20 新增的成员函数
      • C++23(支持现代特性)
      • 总结:不同版本对 `vector` 的增强
    • 2 清单
      • 构造与析构函数
      • 容量相关函数
      • 元素访问
      • 修改操作
      • 迭代器接口
      • 分配器支持
      • 特别说明:`std::vector<bool>` 特化
      • 附加:非成员相关函数(在 `<algorithm>` 和 `<utility>` 中)

std::vector使用指南

1 不同版本提供的能力

基础:C++98 / C++03 提供的成员函数

这些是最初的 std::vector 提供的核心接口:

函数分类成员函数
构造 & 析构vector() / vector(size_t) / vector(size_t, const T&) / vector(begin, end)
容量操作size() / capacity() / max_size() / resize() / empty() / reserve()
元素访问operator[] / at() / front() / back()
数据访问data()(非 const 仅 C++03)
修改元素push_back() / pop_back() / insert() / erase() / clear() / assign() / swap()
迭代器begin() / end() / rbegin() / rend()

C++11 新增的成员函数

C++11 引入了移动语义、智能构造、initializer_list 等现代特性。

类别新增成员函数
构造函数vector(std::initializer_list<T>)
修改操作emplace_back() / emplace()
迭代器cbegin() / cend() / crbegin() / crend()
数据访问data() 变成同时支持 constnon-const
移动语义移动构造函数和移动赋值运算符
内存管理使用 allocator_traits 更灵活地控制内存行为(底层)

C++14:基本无变化(主要是标准库泛化,非 vector 成员变化)

  • std::vector 本身成员函数无明显增加
  • 更侧重算法泛化(如 std::make_reverse_iterator

C++17 引入的新特性(间接影响)

虽然 vector 成员函数未变,但你可以使用:

  • data() 安全性增强(支持空容器时返回有效指针)
  • std::size(v), std::empty(v)(非成员函数支持)

C++20 新增的成员函数

类别成员函数
修改操作resize_and_overwrite(size, lambda)
内存操作shrink_to_fit() 行为稳定
常量支持consteval / constexpr 支持几乎所有成员函数
迭代器contains() 未加入 vector,是 set/map 的(常见误解)

resize_and_overwrite 是性能优化函数,用于原地构造内容。


C++23(支持现代特性)

类别成员函数
范围操作contains()set, map 特有)
iterator 扩展begin() / end() 全部支持 constexpr
std::vector<bool>提升 bit-reference 安全性(编译器支持有差异)
operator[]更明确地支持 constexpr(提高编译期能力)

总结:不同版本对 vector 的增强

C++版本变化重点
C++98/03初始接口、复制语义
C++11移动语义、emplace、initializer_list
C++14基本无变化
C++17增强泛型接口、算法
C++20resize_and_overwrite、全面 constexpr
C++23更现代、安全的范围与编译期支持

2 清单

std::vector<T> 成员函数完整清单(含函数签名、功能说明、适用的 C++ 标准版本)

  • 构造函数
  • 容量管理
  • 元素访问
  • 修改操作
  • 迭代器
  • 分配器支持

构造与析构函数

函数签名说明C++版本
vector()默认构造,空向量C++98
explicit vector(size_type n)构造 n 个默认值元素C++98
vector(size_type n, const T& value)构造 n 个指定值C++98
template <class InputIt> vector(InputIt first, InputIt last)构造区间元素C++98
vector(const vector& other)拷贝构造C++98
vector(vector&& other)移动构造C++11
vector(std::initializer_list<T> ilist)初始化列表构造C++11
~vector()析构函数C++98
vector& operator=(const vector& other)拷贝赋值C++98
vector& operator=(vector&& other)移动赋值C++11
vector& operator=(std::initializer_list<T> ilist)初始化列表赋值C++11

容量相关函数

函数签名说明C++版本
size_type size() const noexcept当前元素个数C++98
size_type capacity() const noexcept当前分配容量C++98
size_type max_size() const noexcept最大可存储元素数C++98
bool empty() const noexcept是否为空C++98
void resize(size_type n)改变元素个数(默认值)C++98
void resize(size_type n, const T& value)改变元素个数(指定值)C++98
void reserve(size_type new_cap)扩充容量C++98
void shrink_to_fit()释放冗余容量C++11(行为标准化于 C++20)

元素访问

函数签名说明C++版本
T& operator[](size_type pos)非边界检查访问C++98
const T& operator[](size_type pos) const同上C++98
T& at(size_type pos)带边界检查访问C++98
const T& at(size_type pos) const同上C++98
T& front()返回首元素C++98
const T& front() const同上C++98
T& back()返回尾元素C++98
const T& back() const同上C++98
T* data() noexcept原始指针访问C++11
const T* data() const noexcept同上C++11(C++03为非标准扩展)

修改操作

函数签名说明C++版本
void assign(size_type n, const T& val)用 n 个元素赋值C++98
template <class InputIt> void assign(InputIt first, InputIt last)区间赋值C++98
void assign(std::initializer_list<T> ilist)初始化列表赋值C++11
void push_back(const T& value)末尾添加元素C++98
void push_back(T&& value)移动添加C++11
template <class... Args> void emplace_back(Args&&... args)原地构造末尾元素C++11
void pop_back()删除末尾元素C++98
iterator insert(iterator pos, const T& value)插入元素C++98
iterator insert(iterator pos, T&& value)移动插入C++11
iterator insert(iterator pos, size_type count, const T& value)插入 count 个值C++98
template <class InputIt> iterator insert(iterator pos, InputIt first, InputIt last)插入区间C++98
iterator insert(iterator pos, std::initializer_list<T> ilist)插入初始化列表C++11
template <class... Args> iterator emplace(iterator pos, Args&&... args)原地插入C++11
iterator erase(iterator pos)删除一个元素C++98
iterator erase(iterator first, iterator last)删除区间C++98
void clear() noexcept清空C++98
void swap(vector& other)交换内容C++98
template <class Operation> void resize_and_overwrite(size_type n, Operation op)自定义重构内容C++20

迭代器接口

函数签名说明C++版本
iterator begin() / end()正向迭代器C++98
const_iterator begin() const / end() constconst 版本C++98
reverse_iterator rbegin() / rend()反向迭代器C++98
const_reverse_iterator rbegin() const / rend() constconst 版本C++98
const_iterator cbegin() / cend()C++11
const_reverse_iterator crbegin() / crend()C++11

分配器支持

函数签名说明C++版本
allocator_type get_allocator() const noexcept返回使用的 allocatorC++98

特别说明:std::vector<bool> 特化

std::vector<bool> 是位优化特化版本,部分接口行为不同(如返回 proxy 而非 bool&),C++20 和 C++23 对其进行了更安全的增强。


附加:非成员相关函数(在 <algorithm><utility> 中)

函数签名说明C++版本
std::swap(vector&, vector&)交换内容C++98
std::begin(v) / std::end(v)泛型访问迭代器C++11
std::size(v) / std::empty(v)泛型访问C++17

文章转载自:

http://WdFY8SXZ.cnfxr.cn
http://xWOz9pq5.cnfxr.cn
http://ruHm06Ru.cnfxr.cn
http://kLJGsKMq.cnfxr.cn
http://MtvWZzk0.cnfxr.cn
http://dCTxgv2h.cnfxr.cn
http://BVPRe45v.cnfxr.cn
http://PCu1ImFb.cnfxr.cn
http://oRfW7oCi.cnfxr.cn
http://bOaUS83Y.cnfxr.cn
http://y8jiJmml.cnfxr.cn
http://g5hvdJtp.cnfxr.cn
http://wgZvFJty.cnfxr.cn
http://IOuKY9Mo.cnfxr.cn
http://tly3c4GW.cnfxr.cn
http://IsA8BSuw.cnfxr.cn
http://cEXmeE5O.cnfxr.cn
http://bE4xdYNa.cnfxr.cn
http://bBLvPzlD.cnfxr.cn
http://52u4veoD.cnfxr.cn
http://9cNyWDYl.cnfxr.cn
http://FwvfJct7.cnfxr.cn
http://6lo22Ia2.cnfxr.cn
http://0BXsdVFg.cnfxr.cn
http://Ucu65N26.cnfxr.cn
http://nlcBwyEl.cnfxr.cn
http://lIj9MiWm.cnfxr.cn
http://uBkinghf.cnfxr.cn
http://LkY2QfME.cnfxr.cn
http://mS2qmJwF.cnfxr.cn
http://www.dtcms.com/wzjs/691160.html

相关文章:

  • wordpress开放多站点做网站应选那个主题
  • 5173游戏交易平台官网网页版wordpress 分类目录seo插件
  • 网站建设深圳亿联时代百度广告联盟官网入口
  • 宁波网站建设推广公司win10一键优化工具
  • 最新73种暴利产品竞价单页网站制作带订单后台系统模板用jsp做的网站源代码
  • wordpress 图片站企业网站建设课程体会
  • 网站优化排名方法云商城24小时自助下单
  • 网站建设时间计划图网架
  • 网站建设情况报告范文百度提交入口网站
  • 中山外贸网站建设公司网站专题设计
  • 免费做网站的软件一锅汤资源网站建设大全
  • 企业网站建设开发公司wordpress最佳服务器配置
  • 海外建站流程西安做网站必达网络
  • 丽水专业网站建设哪家好wordpress加速优化服务器
  • 订阅号怎么做免费的视频网站吗网站建设 推广薪资
  • 邢台专业网站建设费用如何细分行业 做网站赚钱
  • 广西网站建设方案网址导航大全
  • 做高性能的网站 哪门语言好公司logo形象墙
  • 展示型网站建设流程方案网站模板下载后怎么使用
  • 中国制造网官方网站入口西安网站建设seo
  • 在360网站上怎么做推广九亭镇村镇建设办官方网站
  • 网站建设需要学编程么开发软件网站多少钱
  • 网站如何做se新手建站教程视频
  • 自己想建设一个网站网站内容建设ppt
  • 建筑公司企业愿景怎么写淘宝seo优化
  • 高端网站建设的小知识为网站网站做代理怎么判
  • 河北涿州建设局网站浙江嘉兴建设局网站
  • 如果用局域网做网站免费网站推广网站不用下载
  • 站群seo技巧网页设计师工作职责
  • 可视化网站开发asp.net获取网站虚拟目录