- 博客(42)
- 收藏
- 关注
原创 【C++新特性——基于范围的for循环】
对应set容器来说,内部元素都是只读的,这是由容器的特性决定的,因此在for循环中auto&会被视为const auto &。
2024-07-20 10:21:22 211
原创 【深入理解计算机系统——2信息的表示和处理】
https://i-blog.csdnimg.cn/direct/8daa739e917c4cf2aa79db2b140a19c0.jpeg
2024-07-07 09:28:36 348
原创 【计算机网络——1.3网络核心】
这样看来,电路交换会很稳定,实时性高,二者的本质都是实现端系统之间的交换和传输,都遵循一定的协议。以分组为单位,在每个交换节点, 存储(完全存储)转发的方式交换,在每个交换结点耽误的时间,延迟比电路交换(来一个bit转一个)长;换取共享性,按需使用;源主机和目标主机之间,在节点之间挑选不用的小片,然后串在一起,构成源到目标的独享线路,不适合计算机之间通信,计算机有很强。波分(WDM):主要应用光纤,按照波长划分为不同波段,不同波长承载不同信号,在同一根光纤是传输。交换的方式有两种:分组交换,电路交换。
2024-07-04 15:49:21 360
原创 【计算机网络——1.2网络边缘】
流量阻塞控制:比如A和B互通,会走某条线路,C和D也会经过这条路,或者这条路的一部分,就很有可能阻塞,当信息量太大时,交换节点就会丢东西,信息就不完整,TCP检测线路阻塞情况,从而限值发送速率。其实就是端系统/主机,上面运行着分布式系统,那么这些运行的网络应用就是网络存在的理由,应用由端系统的基础设施(操作系统,硬件,实体协议,网络核心,包括对方主机的应用层下面的基础设施)支撑。不需要握手,直接发送,直接回应,不可靠(TCP的特性一个不占),但是效率高,应用一些不需要数据太准确方面(视频,语音)
2024-07-03 19:13:40 1184
原创 【深入理解计算机系统(好看到哭)——1计算机系统漫游】
比如我们的.C文件就是一个文本文件,因为他由ASCII码构成,其他的都是二进制文件。.C文件由一系列0/1(bit,位)所组成,8位为一组(1B),称为字节,每个字节根据编码方式表示字符,ASCII编码每个字符由1B组成;但是在GBK里中文由2B组成。还会有一些控制字符(回车……)来配合打印。在不同的上下文中,相同的字节序列的意思要结合上下文,比如111在系统B中解析为7,在系统A中可能就解析为“毛泽东选集”。
2024-07-02 19:35:06 349
原创 【关于C/C++中的scanf不能使用问题】
方法3:#pragma warning(disable:4996) 4996是我们的报错序号。方法2:看见后面的日志了吗?在第一行加上#define 日志。方法1:scanf_s。
2024-07-02 18:23:29 197
原创 【计算机网络——1.1网络&internet】
如果没有,手机会发送一个ARP广播,问局域网中谁有具有特定的IP,并请求对方MAC,然后这个局域网所有设备接受广播,但是只有电脑响应,然后手机知道电脑的MAC,然后把数据帧(数据帧就是数据在网络传输的基本单位,它包含源MAC,目标MAC,数据,控制信息)和双方MAC通过交换机发送到电脑的端口,完成交互。局域网之间,局域网和互联网,广域网等,根据IP地址决定数据包转发路径,实现具体和哪个网络交互,避免瞎连。只是众多网络中的一个,但是他很特殊,是全球最大,开放,由众多网络相互交织的“集合体”
2024-06-30 19:02:50 541
原创 【算法——快慢指针&链表】
2—针对19这道力扣例题:会有一些变故:就是长度为1的情况;这时next->next就会报错,所以要设置一个新的链表,即在题目给我们的前面加一个节点(new)1—p2指针先走k步,然后p1和p2都1/s;直到p2走完时(p2->next==NULL),p1->next即为所删。快指针2/s,慢指针1/s;快指针前进要求:当前的下一个都是非空;快指针不满足时,慢指针所指就是中点。快慢指针一开始都在开头,快指针2/s,慢指针1/s;3—这道题很多解法,看力扣历史题解(画个图就通透了)
2024-06-30 15:09:20 216
原创 版本控制系统:Git 纯应用(持续更新);
ctrl+上行键:上次代码本地仓库:Git init新建文件:touchxxxx.xxx查看状态:Git status文件从工作区——暂存区:Git add ./文件名(.是通配符代表所有)暂存区——仓库:Git commit -m "注释信息"提交信息和状态:Git log更详细:但是很麻烦,东西一大堆,需要自己起别名,直接去黑马程序员看具体方法修改文件:vi 文件名。修改后需要重新add和commit,然后git log可以查看提交信息。
2024-06-28 16:31:15 796
原创 【C++——多态&&虚函数&&纯虚函数】
/这就是虚函数引入的地方,虚函数引入一个叫动态联编的东西,通过V表(虚函数表)来实现编译,包含基类所有虚函数的映射,这样可以在运行时把它们映射到正确的覆写函数(override)多态性:父类有虚函数,子类有一个同名函数,当父类指针new一个子类对象或者通过父类引用来绑定一个子类对象时,如果用父类指针来调用这个虚函数,那么其实调用的是子类的虚函数。虚函数不是免费的,在我们类中插入一个普通函数不占用空间,但是虚函数本质上是加了一个虚函数表指针(4B)调用虚函数不一定是多态,多态又必然和虚函数扯上关系;
2024-06-14 10:11:05 197
原创 【算法——动态规划(DFS——记忆化——DP一层更比一层强)】
递归:递:大问题分解子问题的过程;归:产生答案dp:只进行归;用已知的最底层的(递归的边界,搜索树的底),推出未知一句话:dp数组(不一定是数组,也可以是有限数间的来回递推)递推关系:dfs向下递归的公式dp数组初始化:递归的边界动态规划题目的基础就是:回溯——记忆化——dp(一层比一层效率高)
2024-06-12 23:40:59 1088
原创 【C++拷贝构造函数&深浅拷贝】
注意:访问权限是public拷贝构造函数:类名(const 类名& 对象名){} 可以有多个参数。没有常引用就是普通构造函数如果不写,编译器自己会给一个(作用仅仅是赋值,默认拷贝构造函数一直都在)函数值传递过程中会调用拷贝构造函数,因为函数形参本身就是一份赋值函数以值的方式返回对象时,可能会调用拷贝构造函数(vs会,linux不会,g++做了优化)
2024-06-10 21:32:04 332
原创 【C++新特性——final&overrid】
final修饰虚函数:子类虚函数后面+final,不让当前子类的子类重写这个虚函数。二overrid(类似于一个检查措施,强制重写,如果重写函数名写错会报错)final修饰类:不允许被继承。
2024-06-10 17:20:23 197
原创 【C++新特性——返回值类型后置(auto和decltype组合使用)】
【代码】【C++新特性——返回值类型后置(auto和decltype组合使用)】
2024-06-10 16:49:38 103
原创 【C++算法——异或】 案例:实现两数交换和max
案例2:两数max方法1(这个方法会有溢出的风险)案例2:两数max方法2。案例1:swap伪代码。
2024-05-30 18:43:10 606
原创 【C++分文件】
每一个cpp文件是一个翻译单元,如果同时运行时,一个cpp有另一个cpp的声明,就会出现重定义的情况,解决办法:把另一个cpp从生成中排除,或者声明另一个cpp的h文件,或者内联inline。#include就是把后面文件的内容全部复制一遍过来。
2024-05-29 09:50:12 288
原创 【C++——宏#define】
debug是我们程序员模式;release是发行版本,给用户用。所以:release中去掉所有的日志代码,在debug里面保留。其实后面还有很多:移至B站国外C++ ——> C++的宏。有时我们的日志涉及隐私,不能在release中运行。然后同理release目录:PR_RELEASE。宏可以是任何东西,一个花括号,逗号……你也可以这样,尽管看起来很傻b。方法:右击项目——>属性。
2024-05-28 23:18:53 215
原创 【现代C++——lambda】
]:如何传入变量。里面可以放=、&、某个变量。不需要函数定义就可以定义一个函数的方法,用完就丢。原理:只要有函数指针就可以lambda。
2024-05-28 13:06:32 207
原创 【C++11新特性 decltype类型推导】
表达式为左值或者带括号,那么返回带引用(不忽视const,volatile等限定符)表达式是函数调用,使用decltype推导出的类型和函数返回值一致。有时不需要或者不能定义变量,auto就不行了。
2024-05-18 17:30:17 305
原创 【C++类和对象---静态成员】
2静态成员变量不能初始化,要在类外全局区初始化,加上const可以打破。1类静态成员变量由静态成员函数访问。3私有成员不能类外访问问题。
2024-05-16 18:05:06 164
原创 【C++类和对象---const修饰成员函数 && 修饰成员】
在实际开发中如果成员函数不会修改成员变量,就应该加上const,这是C++的编程规范,就像const修饰函数形参一样。后人看见成员函数有const修饰就不会修改成员变量。
2024-05-16 10:21:49 111
原创 【C++ to_string(number) & stoi/l/f/d(string) 】 数字<—>字符串
【代码】【C++ to_string(number) & stoi/l/f/d(string) 】 数字<—>字符串。
2024-05-12 19:01:12 91 1
原创 【C++ find 函数】
1参数first和last就是范围(迭代器):[first,last) val就是查的值。2返回一个迭代器:找到返回范围内第一次出现的;如果没找到,就返回last。一.基于#include头文件的find。通常操作方法:auto理解成自动匹配类型。
2024-05-12 18:36:41 130 1
原创 【C++ 命名空间】关于using namespace std;全在这里
using其实就是一种声明,指定我哪一块命名空间,直接看代码,有了上面基础,很简单的。如下代码引入:这里是无限定标识符名字查找。注意:不需要and无法用命名空间限定。
2024-05-11 11:03:34 279
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人