请人建设网站需要注意什么小程序开发课程

张小明 2026/1/10 9:23:56
请人建设网站需要注意什么,小程序开发课程,给网站做引流多少钱,英铭科技做网站和设计制作更专业.vector的构造函数#xff08;1#xff09; 构造函数的参数是内存池#xff0c;我们日常不需要理会#xff0c;除非你要用自己的内存池#xff0c;这就是默认构造#xff0c;explicit修饰#xff0c;说明该函数不支持隐式类型转换。#xff08;2#xff09;用 n 个 va….vector的构造函数1 构造函数的参数是内存池我们日常不需要理会除非你要用自己的内存池这就是默认构造explicit修饰说明该函数不支持隐式类型转换。2用 n 个 val 构造对象3用迭代器区间构造对象不一定是自己的迭代器可以类型转换的也行4拷贝构造代码语言javascriptAI代码解释//插入10个数据都是1 vectorint v1(10, 1); //默认构造 vectorint v2; //拷贝构造 vectorint v3(v1); //迭代器区间构造 vectorint v4(v1.begin(), v1.end()); //也可以用别的容器的迭代器前提是支持类型转换的 string s1(xxxxxxxxxxx); //string迭代器内容是char的其ASCII码值是int所以可以类型转换 //并且char转int不用考虑数据溢出风险小转大不会溢出。 vectorint v5(s1.begin(), s1.end());注意最后一个注释这里再讲解一个 C11 添加的非常实用的构造花括号 { } 是 initializer_list 类型C11定义的新参数 其实string也有不过没用处十分麻烦所以没之前介绍代码语言javascriptAI代码解释//vectorint v6({ 1,2,3,4,5,6,7,8,9,10 }); vectorint v7 { 1,2,3,4,5,6,7,8,9,10 };如图编译器优化为直接构造(原本是隐式类型转换构造了一个vector对象)严格来说是上面那样拷贝构造的写法不过都可以。有了initializer_list可以让它像数组一样初始化。它的底层原理就是两个指针 把括号内的数据存在临时数组然后提供了指向首位置和尾下一个位置的指针迭代器所以它是可以使用 范围for 的2.迭代器以及各种简单接口2.1迭代器vector的迭代器是和string一样的用法就是那样2.2capacity简单接口是不是十分熟悉是的大部分在 string 中都有使用方式也一样都是成员函数利用vector对象就能随手调用2.3operatoroperator 十分好用所以单独拿出来讲不过它的使用也十分简单2涉及更难的知识目前不需要知道。只需要记住赋值是针对于 已存在对象的操作 3的initializer_list 类型也是针对已存在对象不要与构造函数混淆代码语言javascriptAI代码解释vectorint v1{1,2,3,4,5} vectorint v2; //v2先存在才能谈赋值。 v2 v1; //一样这才是赋值不要与第一行的构造混淆 v2{1,0,0,8,6};2.4 数据获取接口 atoperator[ ]这部分和string也是一样。甚至用法也一样。 也只需要知道前两个。 再次提醒at和[ ] 都会检测是否越界不过at 抛异常,不中止程序[ ] 是严格的 断言检查直接中止程序。 在Debug下3.vector的增删查改主要了解这部分的使用3.1push_back尾插没什么区别参数都是 一个值 val3.2pop_back这个没参数直接调用函数实现 尾删3.3insert这里的insert参数都是用迭代器iterator 实现的第一个最常用我们了解第一个就行代码语言javascriptAI代码解释//头插 ,头删, 指定位置插入或者删除 v1.insert(v1.begin(), 0); v1.insert(v1.begin()3, 1);迭代器参数可以是表达式形式3.4erase1删除pos迭代器位置 2删除一段迭代器区间最常用的是1删除pos迭代器位置代码语言javascriptAI代码解释v1.erase(v1.begin()); v1.erase(v1.begin()3);迭代器可以是表达式形式3.5clear清理数据不清空间和string一样4.initializer_list { } 与 隐式类型转换迭代器访问我们构造一个struct AA代码语言javascriptAI代码解释//也是类 但默认为public struct AA { int _a1 1; int _a2 1; AA(int a1, int a2) :_a1(a1) ,_a2(a2) {} };这是一个类struct也是类不过成员默认为public 我们可以这样代码语言javascriptAI代码解释AA aa1 { 0,0 }; AA aa2({ 0,0 });这就是多参数的隐式类型转换构造了AA对象 两种写法都行那如果我们定义了一个存储AA的vectorvectorAA就可以这样代码语言javascriptAI代码解释//隐式类型转换 vectorAA v1 { {1,1},{2,2},{3,3} }; //也可以一部分是AA对象 vectorAA v1 { aa1,{1,1},{2,2},{3,3} };这就是两者的结合可以避免繁琐地一个个创建AA对象直接用隐式类型转换vector构造更方便4.1迭代器访问当利用迭代器遍历 vectorAA 时若AA并没有支持流插入 cout所以无法完成遍历此时有两种办法1. 重载 运算符让AA支持 cout 输出2. 让迭代器用 - 访问AA对象的成员(public为什么迭代器it可以访问类的成员已知vector的迭代器是指针的封装。vector底层是个数组存储AA对象迭代器指向数组内容也就是指向AA对象那这个指针就是 AA* 指针AA* 指针就可以访问AA内部的公有成员。5.emplace_back 和 push_back 的差异emplace_back 和 push_back 作用基本相同 但也有差异。我们衔接 4. 的内容来理解代码语言javascriptAI代码解释//push_back 和 emplace_back 用法差不多 v1.push_back(aa1); v1.emplace_back(aa1);它们都可以插入一个值 但是emplace_back 代码语言javascriptAI代码解释//可以直接传构造AA的参数因为他是可变参数模板现阶段没学 //更高效会直接构造AA v1.emplace_back(1, 1);push_back:代码语言javascriptAI代码解释//只能传AA对象不能穿构造AA的参数这就是区别 //{11} 也是AA对象因为隐式类型转换构造临时对象AA v1.push_back({ 1,1 });这就是区别 有时候emplace_back 更高效。注意这两个写法不能交叉用都是各自专属www.dongchedi.com/article/7586104283570340414www.dongchedi.com/article/7586107772832940568www.dongchedi.com/article/7586105171260801598www.dongchedi.com/article/7586103844216504856www.dongchedi.com/article/7586105032132051480www.dongchedi.com/article/7586105437142417944www.dongchedi.com/article/7586104244311769625www.dongchedi.com/article/7586103373234356761www.dongchedi.com/article/7586103016810971672www.dongchedi.com/article/7586105462731440664www.dongchedi.com/article/7586103797324218942www.dongchedi.com/article/7586103300483973694www.dongchedi.com/article/7586102611422511678www.dongchedi.com/article/7586102949072437822www.dongchedi.com/article/7586108028160836121www.dongchedi.com/article/7586372917312012824www.dongchedi.com/article/7586373081946800702www.dongchedi.com/article/7586373137030677017www.dongchedi.com/article/7586374371732685374www.dongchedi.com/article/7586376512555958809www.dongchedi.com/article/7586375382136816190www.dongchedi.com/article/7586376917411463704www.dongchedi.com/article/7586378437947015742www.dongchedi.com/article/7586377210039501374www.dongchedi.com/article/7586378517827912217www.dongchedi.com/article/7586372861272031806
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

深圳营销型网站建设公司选择哪家好?网站开发的初始密码

GPT-OSS-120B/20B 安装使用与案例全解析在生成式 AI 快速走向本地化、私有化部署的今天,一个真正兼顾高性能、低门槛、可商用的大模型显得尤为稀缺。2025年8月,OpenAI 推出 gpt-oss-120b 与 gpt-oss-20b 系列模型,不仅打破了“开源即弱小”的…

张小明 2026/1/9 19:21:25 网站建设

石家庄外贸做网站陕西省水利厅网站建设与管理处

高级 Perl 编程:正则表达式与函数库深度解析 1. 正则表达式回顾 正则表达式(也称为 regexes 或 regexps)是 Perl 中强大的文本处理工具。在之前的基础学习中,我们掌握了一些基本的正则表达式知识,现在将深入探讨一些“超越基础”的主题。 1.1 贪婪量词 在正则表达式中…

张小明 2026/1/10 1:35:22 网站建设

帮企业建网站步骤机械产品做哪个网站

ComfyUI工作流管理终极指南:从入门到精通完整教程 【免费下载链接】ComfyUI 最强大且模块化的具有图形/节点界面的稳定扩散GUI。 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI 作为最强大的模块化稳定扩散GUI,ComfyUI的工作流管理功…

张小明 2026/1/10 2:11:31 网站建设

南昌谁做网站设计上海电商公司排名

VibeThinker-1.5B-APP:小模型如何在算法与数学推理中“以小博大”? 在当前大模型动辄数百亿、数千亿参数的军备竞赛中,一个仅 1.5B 参数的语言模型竟能在 AIME 数学竞赛和 LiveCodeBench 编程评测中超越 DeepSeek R1 和 Magistral Medium 等…

张小明 2026/1/9 1:11:53 网站建设

网站在线优化工具免费下载现成ppt网站

10分钟掌握OpenCode工具系统:从新手到专家的完整指南 【免费下载链接】opencode 一个专为终端打造的开源AI编程助手,模型灵活可选,可远程驱动。 项目地址: https://gitcode.com/GitHub_Trending/openc/opencode 开篇:为什么…

张小明 2026/1/10 1:36:45 网站建设

为什么没人做同城购物网站网站建设公司的前端

在现代数字媒体制作中,视频水印已成为影响内容纯净度的常见问题。无论是个人创作的短视频,还是专业制作的影视作品,水印的存在都可能破坏整体视觉效果。针对这一痛点,基于LAMA模型的智能水印清除方案应运而生,为视频创…

张小明 2026/1/9 19:07:06 网站建设