自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【C++新特性——委托构造函数和继承构成函数】

【代码】【C++新特性——委托构造函数和继承构成函数】

2024-07-19 11:42:48 38

原创 【C++新特性——using】

【代码】【C++新特性——using】

2024-07-19 10:52:37 28

原创 【C++新特性——对模板优化】

【代码】【C++新特性——对模板右尖括号优化】

2024-07-19 09:38:47 333

原创 【深入理解计算机系统——2信息的表示和处理】

https://i-blog.csdnimg.cn/direct/8daa739e917c4cf2aa79db2b140a19c0.jpeg

2024-07-07 09:28:36 345

原创 【计算机网络——1.3网络核心】

这样看来,电路交换会很稳定,实时性高,二者的本质都是实现端系统之间的交换和传输,都遵循一定的协议。以分组为单位,在每个交换节点, 存储(完全存储)转发的方式交换,在每个交换结点耽误的时间,延迟比电路交换(来一个bit转一个)长;换取共享性,按需使用;源主机和目标主机之间,在节点之间挑选不用的小片,然后串在一起,构成源到目标的独享线路,不适合计算机之间通信,计算机有很强。波分(WDM):主要应用光纤,按照波长划分为不同波段,不同波长承载不同信号,在同一根光纤是传输。交换的方式有两种:分组交换,电路交换。

2024-07-04 15:49:21 359

原创 【计算机网络——1.2网络边缘】

流量阻塞控制:比如A和B互通,会走某条线路,C和D也会经过这条路,或者这条路的一部分,就很有可能阻塞,当信息量太大时,交换节点就会丢东西,信息就不完整,TCP检测线路阻塞情况,从而限值发送速率。其实就是端系统/主机,上面运行着分布式系统,那么这些运行的网络应用就是网络存在的理由,应用由端系统的基础设施(操作系统,硬件,实体协议,网络核心,包括对方主机的应用层下面的基础设施)支撑。不需要握手,直接发送,直接回应,不可靠(TCP的特性一个不占),但是效率高,应用一些不需要数据太准确方面(视频,语音)

2024-07-03 19:13:40 1183

原创 【深入理解计算机系统(好看到哭)——1计算机系统漫游】

比如我们的.C文件就是一个文本文件,因为他由ASCII码构成,其他的都是二进制文件。.C文件由一系列0/1(bit,位)所组成,8位为一组(1B),称为字节,每个字节根据编码方式表示字符,ASCII编码每个字符由1B组成;但是在GBK里中文由2B组成。还会有一些控制字符(回车……)来配合打印。在不同的上下文中,相同的字节序列的意思要结合上下文,比如111在系统B中解析为7,在系统A中可能就解析为“毛泽东选集”。

2024-07-02 19:35:06 344

原创 【关于C/C++中的scanf不能使用问题】

方法3:#pragma warning(disable:4996) 4996是我们的报错序号。方法2:看见后面的日志了吗?在第一行加上#define 日志。方法1:scanf_s。

2024-07-02 18:23:29 193

原创 【计算机网络——1.1网络&internet】

如果没有,手机会发送一个ARP广播,问局域网中谁有具有特定的IP,并请求对方MAC,然后这个局域网所有设备接受广播,但是只有电脑响应,然后手机知道电脑的MAC,然后把数据帧(数据帧就是数据在网络传输的基本单位,它包含源MAC,目标MAC,数据,控制信息)和双方MAC通过交换机发送到电脑的端口,完成交互。局域网之间,局域网和互联网,广域网等,根据IP地址决定数据包转发路径,实现具体和哪个网络交互,避免瞎连。只是众多网络中的一个,但是他很特殊,是全球最大,开放,由众多网络相互交织的“集合体”

2024-06-30 19:02:50 540

原创 【算法——快慢指针&链表】

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 211

原创 【算法——双指针&前缀和】

【代码】【算法——双指针&前缀和】

2024-06-30 13:19:31 286

原创 版本控制系统: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 793

原创 【C++类和对象&重载——拷贝构造函数-深浅拷贝&赋值运算符重载之间的关系】

默认赋值运算是浅拷贝,默认拷贝构造函数也一样。

2024-06-15 19:18:40 100

原创 【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 1085

原创 【C++——引用&】

c/cpp中用&取变量的地址,但是从cpp赋予了一个新含义引用是变量的别名,和变量本身是一回事。

2024-06-11 22:10:29 548

原创 【C++拷贝构造函数&深浅拷贝】

注意:访问权限是public拷贝构造函数:类名(const 类名& 对象名){} 可以有多个参数。没有常引用就是普通构造函数如果不写,编译器自己会给一个(作用仅仅是赋值,默认拷贝构造函数一直都在)函数值传递过程中会调用拷贝构造函数,因为函数形参本身就是一份赋值函数以值的方式返回对象时,可能会调用拷贝构造函数(vs会,linux不会,g++做了优化)

2024-06-10 21:32:04 331

原创 【C++新特性——final&overrid】

final修饰虚函数:子类虚函数后面+final,不让当前子类的子类重写这个虚函数。二overrid(类似于一个检查措施,强制重写,如果重写函数名写错会报错)final修饰类:不允许被继承。

2024-06-10 17:20:23 196

原创 【C++新特性——返回值类型后置(auto和decltype组合使用)】

【代码】【C++新特性——返回值类型后置(auto和decltype组合使用)】

2024-06-10 16:49:38 103

原创 【C++重载——<<&>>&==&[]&=……】

注意:在重载函数中如果形参位置颠倒,会出现:p

2024-06-07 10:31:52 691

原创 【C++算法——异或】 案例:实现两数交换和max

案例2:两数max方法1(这个方法会有溢出的风险)案例2:两数max方法2。案例1:swap伪代码。

2024-05-30 18:43:10 604

原创 【C++分文件】

每一个cpp文件是一个翻译单元,如果同时运行时,一个cpp有另一个cpp的声明,就会出现重定义的情况,解决办法:把另一个cpp从生成中排除,或者声明另一个cpp的h文件,或者内联inline。#include就是把后面文件的内容全部复制一遍过来。

2024-05-29 09:50:12 288

原创 【C++小细节】

2vector<vector<int>>V()初始化。1【C++ 对象后面跟{ }】

2024-05-29 09:44:28 355

原创 【C++——宏#define】

debug是我们程序员模式;release是发行版本,给用户用。所以:release中去掉所有的日志代码,在debug里面保留。其实后面还有很多:移至B站国外C++ ——> C++的宏。有时我们的日志涉及隐私,不能在release中运行。然后同理release目录:PR_RELEASE。宏可以是任何东西,一个花括号,逗号……你也可以这样,尽管看起来很傻b。方法:右击项目——>属性。

2024-05-28 23:18:53 214

原创 【现代C++——lambda】

]:如何传入变量。里面可以放=、&、某个变量。不需要函数定义就可以定义一个函数的方法,用完就丢。原理:只要有函数指针就可以lambda。

2024-05-28 13:06:32 207

原创 【C++算法——最大公约数(辗转相除法)】

【代码】【C++算法——最大公约数(辗转相除法)】

2024-05-26 22:19:29 91

原创 【C++函数指针】

接下来讲一下成员函数。

2024-05-25 23:52:27 1163

原创 【C++静态数组——array】

和vector不同的是:大小固定,array在栈区,vector在堆区。一样可以使用迭代器以及size()等。

2024-05-25 21:30:29 96

原创 【C++类和对象---友元】

友元全局函数:友元全局函数中,可以访问另一个类的所有成员。友元类的所有成员函数都可以访问另一个类的所有成员。

2024-05-23 08:26:04 532 1

原创 【C++类和对象---重载(1基础)】

【代码】【C++类和对象---重载(1基础)】

2024-05-23 00:34:34 237

原创 【C++11新特性 decltype类型推导】

表达式为左值或者带括号,那么返回带引用(不忽视const,volatile等限定符)表达式是函数调用,使用decltype推导出的类型和函数返回值一致。有时不需要或者不能定义变量,auto就不行了。

2024-05-18 17:30:17 305

原创 【C++11新特性自动类型推导auto】

声明的变量要进行初始化。

2024-05-16 19:31:12 409

原创 【C++类和对象---静态成员】

2静态成员变量不能初始化,要在类外全局区初始化,加上const可以打破。1类静态成员变量由静态成员函数访问。3私有成员不能类外访问问题。

2024-05-16 18:05:06 164

原创 【C++类和对象---const修饰成员函数 && 修饰成员】

在实际开发中如果成员函数不会修改成员变量,就应该加上const,这是C++的编程规范,就像const修饰函数形参一样。后人看见成员函数有const修饰就不会修改成员变量。

2024-05-16 10:21:49 110

原创 【C++ distance() 计算两个迭代器距离】

注意:在#include头文件定义。

2024-05-12 19:35:31 116 1

原创 【C++ to_string(number) & stoi/l/f/d(string) 】 数字<—>字符串

【代码】【C++ to_string(number) & stoi/l/f/d(string) 】 数字<—>字符串。

2024-05-12 19:01:12 89 1

原创 【C++ find 函数】

1参数first和last就是范围(迭代器):[first,last) val就是查的值。2返回一个迭代器:找到返回范围内第一次出现的;如果没找到,就返回last。一.基于#include头文件的find。通常操作方法:auto理解成自动匹配类型。

2024-05-12 18:36:41 129 1

原创 【C++ 命名空间】关于using namespace std;全在这里

using其实就是一种声明,指定我哪一块命名空间,直接看代码,有了上面基础,很简单的。如下代码引入:这里是无限定标识符名字查找。注意:不需要and无法用命名空间限定。

2024-05-11 11:03:34 278

原创 【C++11新特性constexpr】&【C++const】&【C++常量表达式函数】

所以我们constexpr的作用就是修饰常亮表达式,后期c++编程中,我们可以:const表达只读的变量,constexpr表达常量表达式。4.const修饰的变量只能由指向const变量的指针操作。常量表达式:由>=1个常量组成,并且在编译阶段就得到结果的表达式,很大程度提高效率(非常量是在运行阶段)c++程序4阶段:预处理,编译,汇编,链接->得到可执行程序,然后运行。注意:struct和class不能用constexpr修饰。变量:const int a==int const a。

2024-05-09 23:31:22 144

原创 【C++11新特性nullptr】&&【NULL和nullptr区别】

nullptr关键字用于标识空指针,是std::nullptr_t类型的(constexpr)变量。它可以转换成任何指针类型和bool布尔类型(主要是为了兼容普通指针可以作为条件判断语句的写法),但是不能被转换为整数。因为在我们印象中NULL是一个空指针,我们自然的希望test(NULL)执行test(char*),但是在我们cpp中NULL仅仅就是个数,所以为了解决此问题,引入nullptr。C:是一个void*类型指针。给任何一个指针初始化为NULL,实际上是(void*)类型指针对0强制类型转换;

2024-05-08 23:05:23 130

空空如也

空空如也

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

TA关注的人

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