自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 收藏
  • 关注

原创 C++进阶⑧:从c++文件到生成exe文件经过哪些步骤、内置类型值传递效率最高、extern、* ( * (&arr+1)-1)、结构体(struct)的定义方式

1 从c++文件到生成exe文件经过哪些步骤C++ 文件到生成exe文件需要经过预处理、编译、汇编和链接几个步骤。预处理:在预处理阶段,编译器主要作加载头文件、宏替换、条件编译的作用。编译:在编译过程中,编译器主要作语法检查和词法分析。可以通过使用 -S选项来进行查看,该选项预处理之后的结果翻译成汇编代码。汇编:在汇编过程中,编译器把汇编代码转化为机器代码。链接:链接就是将目标文件、启动代码、库文件链接成可执行文件的过程。2 内置类型值传递效率最高  内置类型数据在传入函数时,使用值传递方

2021-12-15 18:39:58 2349

原创 C++进阶⑦:C++11之for遍历、STL:min_element、accumulate、strstr()、vector的at和[]、

1 for遍历新特性详细描述新特性可以遍历整个容器。for (int i = 0; i < vec.size(); ++i)等效于for (auto i : vec)①这种遍历方式是只读的但是对容器的遍历是只读的,也就是说遍历的值是不可修改的,如果需要修改其中元素,可以声明为auto &:②引用遍历for (auto e : vec)for (auto &e : vec)引用遍历有两个好处:1.可以像原始遍历那样修改原数组元素。2.用引用访问vec数组可以

2021-12-04 17:37:50 425

原创 面试问题①:内联函数、工程文件格式、友元无this指针、迭代器失效、import、逗号表达式、double/float不能进行位运算

1 内联函数、类内定义与类外定义。内联函数 inline程序在编译器编译的时候,编译器将程序中出现的内联函数的调用表达式用内联函数的函数体进行替换,而对于其他的函数,都是在运行时候才被替代。本质是空间换时间的操作。特点:一般是1-5行的小函数不允许循环、开关、递归语句。内联函数的定义必须出现在内联函数第一次调用之前类结构中所在的类说明内部定义的函数是内联函数——类内定义的,虚函数不会被内联。类内定义将成员函数的函数体写在类的内部的方式称为类内定义。在类定义中的定义的函数都是内联函数

2021-12-04 16:09:13 318

原创 指针问题汇总:指针与const、指向“数组/函数“”的指针、指针数组、函数返回“指针/指向数组的指针”、指针与“地址/引用”。

1 常量指针与指针常量const char *p1 = "hello";char *const p2 = "world";p1是指向常量的指针,叫做常量指针,不能修改常量,只能p1++移动指向不同字母。1. 对于变量,如int a,可以用指向变量的指针int* ptr,或指向常量的指针const int* ptr。2. 对于常量,如const int a,只能用指向常量的指针const int* ptr。p2本身是指针常量,可以指向非常量的字符。但是"hello"这样声明的字符串是存储在只

2021-12-04 15:27:03 456

原创 操作系统④-⑤:多线程同步、互斥、同步、如何实现:锁和信号量(PV操作)

多线程同步线程之间有共享进程的资源,⽐如代码段、堆空间、数据段、打开的⽂件等资源,但每个线程都有⾃⼰独⽴的栈空间。1 互斥互斥(mutualexclusion):保证⼀个线程在临界区执⾏时,其他线程应该被阻⽌进⼊临界区。解决了并发进程/线程对临界区的使⽤问题。多进程竞争公共资源的时候,也可以使⽤互斥的⽅式来避免资源竞争造成的资源混乱。2 同步所谓同步,就是并发进程/线程在⼀些关键点上可能需要互相等待与互通消息,这种相互制约的等待与互通信息称为进程/线程同步。3 互斥与同步的实现和使用——

2021-12-02 21:32:01 1163

原创 操作系统④-④:管道(匿名,命名)、消息队列、共享内存、信号量、信号、Socket、总结写的很好

进程间通信1 管道通信效率低,不适合进程间频繁地交换数据。分为匿名管道和命名管道匿名管道,⽤完了就销毁。命名管道,也被叫做 FIFO。通信范围对于匿名管道, 它的通信范围是存在⽗⼦关系的进程。因为管道没有实体,也就是没有管道⽂件,只能通过 fork 来复制⽗进程 fd ⽂件描述符,来达到通信的⽬的。对于命名管道, 它可以在不相关的进程间也能相互通信。因为命令管道,提前创建了⼀个类型为管道的设备⽂件,在进程⾥只要使⽤这个设备⽂件,就可以相互通信。不管是匿名管道还是命名管道,进程写⼊的数据都是

2021-12-02 20:11:00 1204

原创 操作系统④-③:调度、调度时机、调度原则、调度算法

1 调度选择⼀个进程运⾏这⼀功能是在操作系统中完成的,通常称为调度程序(scheduler)。2 调度时机当进程从⼀个运⾏状态到另外⼀状态变化的时候,其实会触发⼀次调度。从就绪态 -> 运⾏态:当进程被创建时,会进⼊到就绪队列,操作系统会从就绪队列选择⼀个进程运⾏;从运⾏态 -> 阻塞态:当进程发⽣ I/O 事件⽽阻塞时,操作系统必须另外⼀个进程运⾏;从运⾏态 -> 结束态:当进程退出结束后,操作系统得从就绪队列选择另外⼀个进程运⾏;调度算法:⾮抢占式调度算法。抢占式调度

2021-12-02 18:46:13 1391

原创 操作系统④-②:为什么使用线程、什么是线程、线程的优缺点、进程与线程的比较、线程的上下文切换、线程的实现(用户线程,内核线程,轻量级进程)

1 为什么使用线程早期的操作系统中都是以进程作为独⽴运⾏的基本单位,直到后⾯,计算机科学家们⼜提出了更⼩的能独⽴运⾏的基本单位,也就是线程。线程(Thread)之间可以并发运⾏且共享相同的地址空间。2 什么是线程线程是进程当中的⼀条执⾏流程。同⼀个进程内多个线程之间可以共享代码段、数据段、打开的⽂件等资源,但每个线程各⾃都有⼀套独⽴的寄存器和栈,这样可以确保线程的控制流是相对独⽴的。register:n. 寄存器 v. 注册3 线程的优缺点4 进程和线程的比较线程是调度的基本单位,而进

2021-12-02 16:41:21 629

原创 操作系统④-①:进程的状态(并发并行的区别,挂起状态)、进程的控制结构(PCB)、进程的控制(四种)、进程上下文切换(过程及场景))

1 进程的状态什么是进程并发和并行的区别多个程序、交替执⾏的思想,就是 CPU 管理多个进程的初步想法。单核的 CPU 在某⼀个瞬间,只能运⾏⼀个进程。但在 1 秒钟期间,它可能会运⾏多个进程,这样就产⽣并⾏的错觉,实际上这是并发。进程有「运行 - 暂停 -运行」的活动规律CPU 可以从⼀个进程(做菜)切换到另外⼀个进程(买可乐),在切换前必须要记录当前进程中运行的状态信息,以备下次切换回来的时候可以恢复执⾏。进程的状态变迁虚拟内存管理的操作系统中,通常会把阻塞状态的进程的物理内存

2021-12-02 15:52:48 543

原创 操作系统③:虚拟地址、内存分段/分页、TLB、Linux内存管理(逻辑地址、线性地址/虚拟地址、物理地址)、总结-写的太好

1 虚拟地址内存管理单元(Memory Management Unit)操作系统会提供⼀种机制,将不同进程的虚拟地址和不同内存的物理地址映射起来。2 内存分段通过内存分段和内存分页来管理虚拟地址和物理地址之间的关系。虚拟地址是通过段表与物理地址进⾏映射的,分段机制会把程序的虚拟地址分成 4 个段,每个段在段表中有⼀个项,在这⼀项找到段的基地址,再加上偏移量,于是就能找到物理内存中的地址。分段的缺点内存分页解决上述两个缺点多级页表4GB 空间的映射就需要有 4MB 的内存来存储⻚表,

2021-12-01 00:28:13 1324

原创 操作系统②:内核、并发并行

1 内核概念让内核作为应⽤连接硬件设备的桥梁,应⽤程序只需关⼼与内核交互,不⽤关⼼硬件的细节。作用内存分为内核空间和用户空间内核空间的代码可以访问所有内存空间。当程序使⽤⽤户空间时,我们常说该程序在⽤户态执⾏,⽽当程序使内核空间时,程序则在内核态执⾏。Linux特点多任务 - MutiTask:并发或并行可执行文件格式Linux:ELFWindows:PE(可移植执行文件),扩展名.exe / .dll / .sys内核类型Linux:宏内核Window:混合内核

2021-11-30 21:06:48 107

原创 C++进阶⑥:关联结构的底层构造及常用方法的复杂度、set和map的区别、C++ACM模式输入和输出、pair中的iterator->first

关联结构的底层构造及常用方法的复杂度set:底层红黑树,二叉搜索树,所以是有序的,可以在logN时间通过中序遍历找到元素。插入、删除、查询复杂度:O(logN)unordered_set:底层:哈希表count平均时间复杂度是O(1),find的时间复杂度为O(1);map底层红黑树,自动排序,额外空间稍小插入、删除、查询复杂度:O(logN)unordered_map底层哈希表count平均时间复杂度是O(1),find的时间复杂度为O(1);set和map的区别set和map

2021-11-26 21:31:01 1347

原创 操作系统①-②硬件:缓存一致性、CPU如何执行任务、软中断、计算机系统对数字的存储

1 缓存一致性数据写入怎么保证一致性对于数据的写⼊, CPU 都会先写⼊到 Cache ⾥⾯,然后再在找个合适的时机写⼊到内存,那就有「写直达」和「写回」这两种策略来保证 Cache 与内存的数据⼀致性:写直达,只要有数据写⼊,都会直接把数据写⼊到内存⾥⾯,这种⽅式简单直观,但是性能就会受限于内存的访问速度。写回,对于已经缓存在 Cache 的数据的写⼊,只需要更新其数据就可以,不⽤写⼊到内存,只有在需要把缓存⾥⾯的脏数据交换出去的时候,才把数据同步到内存⾥,这种⽅式在缓存命中率⾼的情况,性能会更

2021-11-10 20:03:48 692

原创 操作系统①-①硬件结构:CPU如何运行、存储器金字塔、CPU Cache(如何写出更快的代码)

硬件结构1 CPU如何运行内存位、字节、kb我们的程序和数据都是存储在内存,存储的区域是线性的。数据存储的单位是⼀个⼆进制位(bit) ,即 0 或 1。最小的存储单位是字节(byte) , 1 字节等于 8 位。1byte = 8bit;1kb = 1024 b(字节)位宽:线路位宽:一条线路能传1bit,32条地址总线可以传2 ^ 32 = 4G。CPU位宽:64 位 CPU 就可以⼀次性算出加和两个 64 位数字的结果,因为 64 位 CPU 可以⼀次读⼊ 64 位的数字,并且

2021-11-10 15:20:55 997

原创 C++进阶⑤:运算符优先级、四种强制类型转换、accumulate、bit_xor()、string.size()返回无符号整数、int和unsigned的转换

1 运算符优先级运算符优先级初等运算符->单目运算符->算数运算符->关系运算符->逻辑运算符->条件运算符->赋值运算符->逗号运算符;

2021-11-07 22:45:06 1155

原创 计算机网络④-③/④:流媒体协议:编码/推流/拉流、 P2P协议:.torrent/DHT

应用层(OSI 模型的第七层, TCP 模型的第四层, 即应用层,)还有RTMP、P2P等协议。1 流媒体协议视频流中的图片存在:空间冗余、时间冗余、视觉冗余、编码冗余。可以通过编码来压缩视频。编码应该具有一定的标准:ITU-T(国际电信联盟电信标准化部门)和MPEG(ISO的动态图像专家组)联合制定了H.264/MPEG-4 AVC编码标准。直播的过程主播:采样-编码-推流服务端:接流-流处理-分发观众:拉流-解码-播放如何编码将视频分为三种帧:I帧-关键帧P帧-前向预测编码帧B帧

2021-11-03 22:13:38 2071

原创 计算机网络④-②:HTTPS、混合加密:对称加密和非对称加密、摘要算法、数字证书、HTTPS建立过程

1 HTTPS

2021-11-03 21:34:00 509

原创 计算机网络④-①:HTTP概念、HTTP请求报文的构建-发送、HTTP返回报文的构建-发送、HTTP/1.1/2.0/QUIC特性

1 HTTP概念HTTP 是超文本传输协议,也就是HyperText Transfer Protocol。HTTP 是一个在计算机世界里专门在「两点」之间「传输」文字、图片、音频、视频等「超文本」数据的「约定和规范」。2 HTTP请求报文的构建构建为1-4条,全部为获得一个网页的过程:浏览器输入一个URL(Uniform Resources Locator,统一资源定位符)。浏览器将域名发送给DNS服务器,DNS将其解析为IP地址。浏览器与服务器建立TCP连接(端口80),默认开启Keep-

2021-11-03 17:55:34 380

原创 计算机网络③-④:TCP的socket编程(内核维护两个队列,API)、socket三次握手、socket四次挥手

TCP的socket编程:TCP的socket就是一个文件流。服务端和客户端初始化 socket ,得到文件描述符;服务端调用 bind ,将绑定在 IP 地址和端口;服务端调用 listen,进行监听;服务端调用 accept ,等待客户端连接;客户端调用 connect ,向服务器端的地址和端口发起连接请求;服务端 accept 返回用于传输的 socket 的文件描述符;客户端调用 write 写入数据;服务端调用 read 读取数据;客户端断开连接时,会调用 close ,那么

2021-10-29 17:13:53 299

原创 C++进阶④:优先级队列存pair,根据pair.first大小建立先后次、赋值语句可以当做bool类型使用、非非a、map的count方法、map的初始化,[]和at/find区别

1 优先级队列存pair,根据pair.first大小建立先后次序priority_queue存pair<nums[i], i>,大顶堆根据pair.first判断大小,2 赋值语句可以当做bool类型使用当赋值后的变量值不为0,就将该语句视作true。int a = 3;if(a += 3) 可以执行if(a -= 3) 不能执行if(a = 100) 可以执行if(a = 0) 不能执行3 !!a!!符号可以把不等于0的数都变成true,放在数组[]括号里可以当作1使用

2021-10-29 10:02:57 984

原创 计算机网络③-③:TCP的重传机制、滑动窗口、流量控制(怎么发送死锁及解决方案)、拥塞控制

让TCP变得靠谱的机制小林coding-TCP详解客户端 == 发送端服务端 == 接收端1 重传机制超时重传  ①在发送数据时,设定一个定时器,当超过指定的时间后,没有收到对方的 ACK 确认应答报文,就会重发该数据,也就是我们常说的超时重传。  ②超时重传时间 RTO(Retransmission Timeout 超时重传时间) 的值应该略大于报文往返 RTT(Round Trip Time) 的值。  ③评估RTO的值,要对RTT进行加权平均,还要对RTT进行波动范围采样。重传时间是不

2021-10-26 20:08:00 1016

原创 计算机网络③-②:TCP头格式、三次握手、四次挥手、TCP状态机

TCP头格式TCP有六个状态位:SYN(Synchronize Sequence Number,同步序列编号):用于发起一个连接。ACK(Acknowledgement):用于回复RST(Reset):用于重新连接FIN(Finish):用于结束连接PSH(Push):推送比特URG(Urgent):紧急TCP连接的建立过程:三次握手  理解三次握手,要明白一个现实,就是网络是不可靠的。终究TCP包是要被封装在IP包中的,IP传输本身就是不可靠的,TCP协议要想可靠,只有一个办法,重传。

2021-10-25 21:24:28 930

原创 计算机网络③-①:传输层&封装顺序&网络包在不同层的名称、TCP/UDP的异同、延迟与丢包、UDP的特点/使用场景/定制化的例子

传输层:第四层。该层协议为网络端点主机上的进程之间提供了可靠、有效的报文传送服务。封装报文是从上层到下层(应用层 --> 传输层 --> 网络层 – > 数据链路层 --> 物理层),解封装报文是从下层到上层。1 UDP应用程序无论是用TCP还是UDP传输数据,都要监听一个端口。UDP包到达目标机器后,发现MAC地址匹配,把MAC头取下来,把剩下的包交给IP层,把IP头取下来,发现IP地址匹配。之后根据TCP/UDP的端口号把数据交给应用程序。...

2021-10-25 19:43:11 869

原创 计算机网络②:物理层/MAC层概念、交换机与VLAN、ICMP与ping、网关gateway、路由协议

第2章:从二层到三层从物理层到MAC层2.1 物理层、MAC层概念IP层要封装了MAC层才能将网络包放入物理层局域网:LAN,Local Area NetworkMAC:Medium Access Control:媒体访问控制第二层名为链路层,主要解决三个问题:①网络包的发给谁,谁接收 :这里要用到一个物理地址,叫做链路层地址,也叫MAC层地址(因为该层主要解决媒体接入控制问题)。②多路访问:媒体接入控制(控制谁先发,谁后发,防止混乱):例如随机接入协议。③发送时出现错误怎么办

2021-10-25 16:52:44 1057

原创 计算机网络①:七层模型、ifconfig、DHCP与PXE

计算机网络基本概念计算机网络学习的核心内容就是网络协议的学习。网络协议是为计算机网络中进行数据交换而建立的规则、标准或者说是约定的集合。因为不同用户的数据终端可能采取的字符集是不同的,两者需要进行通信,必须要在一定的标准上进行。类似不同语言的人之间约定一种语言进行沟通。菜鸟教程-计算机网络标准的OSI七层模型自下而上依次为:物理层(Physics Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(

2021-10-24 11:14:54 1046

原创 C++进阶③:int类型和unsigned int类型、string/char比较和当做int、to_string、stoi和atoi、string的三种添加字符(串)方法

回溯法模板leetcode46-全排列void backtracking(参数){ if(终止条件){ 收集结果; return; } for(遍历集合元素){ 处理节点; 递归函数; 回溯操作; }

2021-10-12 14:57:46 745

原创 算法与数据结构①:二分法、动态规划、快速排序、回溯、二叉树遍历

1 二分法 O(logn)两种边界条件的模板两次比较:比较次数最小的二分法,查找区间[lo,hi),条件是lo < hi,返回值是不大于target的最大秩请注意,区间缩小至2时,lo必等于mi。只要nums[mi]= =target,lo移动到目标值的右边,最终nums[lo]必然是数组中大于target的第一个元素(若末尾是target,lo会到nums.length),- -lo是<=target的最大秩class Solution {public: int sear

2021-10-12 14:57:32 348

原创 C++进阶②:#define与typedef、函数返回数组指针怎么写、各类型+1移动的字节数、位运算

1 #define与typedefdefine是直接替换#define a(x, y) x + ycout << a(3, 5) * a(3, 5) << endl;// 3 + 5 * 3 + 5 = 23#define a(x, y) (x+y)cout << a(3, 5) * a(3, 5) << endl;// (3 + 5) * (3 + 5) = 64typedef:类型别名typedef double* p;cout &

2021-09-28 17:40:24 294

原创 C++进阶① :sort和优先级队列的比较函数、greater、less、substr、reverse

1 sort函数sort函数1.sort函数包含在头文件为#include< algorithm>的c++标准库中,调用标准库里的排序方法可以实现对数据的排序,但是sort函数是如何实现的,我们不用考虑!2.sort函数的模板有三个参数:void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp);(1)第一个参数first:是要排序的数组的起始地址。(2)第二个参数last:是结束的地

2021-09-13 17:28:41 4461 2

原创 8.25C++:异常处理基本思想、异常处理中的构造与析构、标准程序库异常处理

1 异常处理基本思想①处理除0异常#include <iostream>using namespace std;int divede(int x, int y) { if (y == 0) throw x; //抛出异常 return x / y;}int main(){ try { //可能发生异常的调用写在try里 cout << "5 / 2 = " << divede(5, 2) <&

2021-08-25 16:43:40 184

原创 8.24C++:setiosflags操纵符和setf函数、利用cmd修改系统中的文件

1 setiosflags操纵符和setf函数setiosflags操纵符需要插入到输入/出流cout << setiosflags(ios_base:: | ios_base:????setf是流对象的成员函数,cout.setf(ios_base:: , ios_base:: )#include <iostream>#include <iomanip>#include <string>#include <fstream>using

2021-08-24 22:29:48 290

原创 8.23C++:输入流类、get函数与cin的区别、put函数、getline函数、文件输入流、streampos类型、字符串输入流、输入/输出流

1 输入流类cin是istream事先预定义好的实例打开文件时与输出流类相同,用按位或增加条件“|”一般来讲,输入尽量少用各种格式控制

2021-08-24 11:19:10 1236 1

原创 8.23C++:I/O流及流类库、输出流、setiosflags操纵符(manipulator)、setprecision()操纵符、文件输出流、字符串输出流

1 I/O流及流类库流类库的结构2 输出流ostream对象流到文本文件中;ofstream可以将对象与文件关联起来;ostringstream可以将对象与字符串关联起来。setprecision()、setiosflags()、setw均在< iomanip >中3 setiosflags操纵符(manipulator),字面:给ios流设置标识#include <iostream>#include <iomanip>#include &l

2021-08-23 16:33:11 251

原创 8.21C++:函数对象、STL提供的函数对象、函数适配器

1 函数对象函数对象是行为类似函数的对象。一个类对象,表现出一个函数的特征,即通过对象名+(参数列表)的方式使用一个类对象。使用STL中提供的或自定义的迭代器和**函数对象,**配合STL的算法,组合出各种各样的功能。通过函数对象而不使用函数指针,可以增加通用性,提高效率。为什么使用函数对象函数对象概念:泛化的函数①将普通函数作为函数对象:传递函数名#include <iostream>#include <numeric> //包含accumulate算法#in

2021-08-22 23:31:51 126

原创 8.20C++:映射、多重映射、pair、equal_range、顺序容器和关联容器的迭代器区别

1 映射通过first、second读取数据案例①:有五门课程,每门都有相应学分,从中选择三门,输出学分总和#include <iostream>#include <map>#include <string> //使用string#include <utility> //包含make_pair函数using namespace std;int main() { map<string, int> courses; //键、

2021-08-21 01:04:03 381

原创 8.18C++:关联容器、无序关联容器、集合(set)、upper_bound和lower_bound

upper_bound和lower_boundlower_bound:返回upper_bound:

2021-08-19 00:19:40 357

原创 C++数据结构第一章:二进制操作符、尾递归

1 常用的二进制操作&、 << 、>>等,会将符号两边的整数类型转换为二进制,“<<”、“>>”不适用于浮点数;"<<"相当于乘2:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零;“>>”相当于除以2并向下取整:按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1;通过“n&1”可以判断是基数还是偶数,通过(a>b)?a:b可以

2021-08-18 22:47:03 253

原创 8.3C++:插入迭代器、顺序容器的适配器、栈和队列、优先级队列

1 插入迭代器插入迭代器参数是容器back_iterator iter(s); //将iter定义为容器s的后插迭代器*iter = 5; //相当于在尾部插入52 顺序容器的适配器#include <iostream>#include <string>#include <stack>using namespace std;int main(){ stack<char> s; string str;

2021-08-15 16:50:09 129

原创 7.26C++:顺序容器、顺序容器的接口(详见P295)、反向迭代器、顺序容器操作实例、顺序容器的特征(vector、deque、list、forward_list、array)、顺序容器的比较和选择

deque(n):双端队列emplace(v):安放assign(v):分配、布置#include <iostream>#include <list>#include <deque>#include <iterator>using namespace std;template <class T>void printContainer(const char* msg, const T& s) { cout <

2021-07-26 20:42:10 126

原创 7.24C++:迭代器、输入/出流迭代器、迭代器分类及功能、迭代器的区间、通过迭代器排序、迭代器的辅助函数

1 迭代器迭代器是算法和容器的桥梁迭代器用作访问容器中的元素算法不直接操作容器中的数据,而是通过迭代器间接操作算法和容器独立增加新的算法,无需影响容器的实现增加新的容器,原有的算法也能适用2 输入/出流迭代器输入流迭代器istream_iterator<T>istream_iterator<int>(cin) //以标准输入(cin)作为参数,将键盘输入int类型数据读入到输入流以输入流(如cin)为参数构造可用*(p++)获得下一个输入的元素输出流迭

2021-07-25 00:17:44 538 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除