自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【TCP/IP协议】传输层UDP协议

对于传输层来说,主要作用在于识别进程!举个例子,两台电脑在互相发送邮件,其本质上来讲,是计算机系统中的邮件对应的进程在相互通信。TCP和UDP是传输层的两个重要协议,对于不同的进程,会用到不同的协议。具体哪个进程的识别,是靠端口号来的。端口号有0~65535。系统端口号:0~1023,最常用的进程都是这个里面的,如浏览器。登记端口号:1024~49151,为没有系统端口号的应用程序使用,使用这类端...

2018-06-27 17:15:13 188

原创 【TCP/IP协议】其他网络层协议

网络层不仅有IP协议,还有其他协议,例如ARP,ICMP协议。ARP协议:此前在数据链路层说过,当主机通过数据链路层发数据时候,会在IP数据报前添加目的主机的MAC地址,ARP的作用就是通过目标IP,寻找MAC地址。通信过程中的发生各种问题时,ICMP 将问题反馈,通过这些信息,管理者可以对所发生的问题作出诊断,然后采取适当的措施去解决它。ICMP 报文由 8 位错误类型、8 位条件代码和 16 ...

2018-06-27 16:36:03 186

原创 【TCP/IP协议】网络层

网络层最常见的就是IP协议先介绍IP数据报:

2018-06-26 11:20:33 830

原创 【TCP/IP协议】数据链路层

数据链路层的主要作用:网络层的数据单元是数据包package,数据链路层的作用就是把网络层传下来的数据包封装成帧frame,发送给物理层;或者接收到的帧中的数据提取出来传送给网络层。可以概括为下面三个:数据封装成帧,或者从帧里提取数据控制真的传输,包括传输差错,调节发送速率与接收方匹配在两个网络实体之间提供数据链路通路的建立、维持和释放帧传输的控制:差错控制反馈重发:接收方通过确认奇偶校验码或者C...

2018-06-26 11:00:44 663

原创 【TCP/IP协议】简介

计算机网络是干嘛的呢?简单来说,就是怎么把数据从一台电脑,通过计算机网络,传到另一台电脑上。注意是通过网络,不是通过物理连接。最常见的计算机网络模型就是TCP/IP和OSI模型了。两种模型的对应关系:(借用网上的图,侵删)之后会分别介绍每一层的作用,与作用方式,先介绍几个比较常见的概念:IP地址每个网络节点都会有自己的IP地址,IP地址通常是一个32bit的数组,被分成4组,也就是每一组是一个by...

2018-06-13 11:12:19 408

原创 【C++】运算符

运算符是什么:在C++中,运算符就是被命名为“++  --   &  等”的函数,那为什么不用函数用运算符呢?简单回答,使用运算符代替函数会让代码更好操作,更直观。以下面的例子来说明下:这个例子中,定义了两个运算符分别可以使year这个类增加或减少一天。从代码例很明显可以看出,代码会特别直观,而且操作起来比函数省事,不用写什么 .() 之类的东西。上面那个写法要注意的,一是运算符的定义方式...

2018-06-11 21:19:58 513

原创 【C++】虚继承

先说结论:虚继承是用来解决菱形问题的菱形问题示意图如下:(来源于网络,用来解释,侵删)前面提到过多继承的问题,如这个图所示D继承了C1 C2,C1 C2继承了B,那么创建一个D实例对象时,会有什么问题呢:结论就是在创建D实例的同时不仅会创建C1 C2,还会创建2个B的实例!这个过程是很多余的。为了不进行创建两个B这个多余的操作,就有了虚继承。将C1 C2对B虚继承:...

2018-06-09 22:09:22 128

原创 【C++】多态 - 虚函数/虚析构函数以及虚函数表

什么是多态:指不同对象收到相同消息时或相同对象收到不同消息时产生不同的动作。这里先说下为什么会用到虚函数:以下面的程序为例: 这个程序中,Carp是Fish的继承类,而Carp中覆盖了Swim这个方法,在MakeFishSwim这个函数中,要使用Fish类的形参,而你将yourFish这个Carp类的实参传递给了这个函数,让他执行Swim这个函数,这会发生什么,上面的程序运...

2018-06-09 21:30:42 1224

原创 【C++】公有/私有/保护特性

将数据限定为不同性质的访问时候,数据的访问权限不同:公有访问限定:在类的内外部都可以被调用私有/保护访问限定:只能在类的内部被调用,在类外部不能被调用 继承的话也有这三种方式:公有继承:子类会把父类的公有成员和保护成员都继承下来,并且成员属性还是也是继承下来的,注意私有的是继承不来的(确切说是继承在了不可见位置)保护继承:私有继承: 是一种包含关系, 也就是 h...

2018-06-07 23:05:36 403

原创 【C++】继承

几点基础回顾:1. 定义继承类的方法2. 使用protected属性在基类中,这样继承类可以使用这个参数,而且在外部这个属性不会被修改3. 基类初始化:向基类传递参数这个里面在基类和派生类中都要使用构造函数来初始化类。一个基本的继承例子:...

2018-06-07 21:17:16 150

原创 【C++】类和对象--constructor和destructor

Constructor:人称构造函数,用来初始化class,在class内部或外部都可以定义,在实例化class的时候会被调用。Constructor的写法一般会有:1. 默认的构造函数,也就是实例化的时候不带任何变量就能调用的构造函数;(这种情况有可能是构造函数就没给默认值,也可能是给了固定的默认值)2. 重载构造函数,在有或者没有默认构造函数的基础上,带有相关变量,用来初始化cla...

2018-06-03 17:56:30 3424

原创 【C++】类和对象--public和private

先通过建立 Human这个类来感受一下:这个例子就对类的建立和使用做了个大概的介绍:首先是类的建立,需要声明它的属性,以及属性的性质,之后需要建立这个类内部的函数;在使用这个类的时候,要实例化这个类,并且对类的属性初始化。注意类的实例化有两种方法:堆中申请内存以及栈中申请内存,后面的文章有介绍!关于为什么会有public和private的设置,下面这个例子就是最后的解释:...

2018-06-03 12:33:17 5500 3

原创 【C++】引用

之前在函数返回值那章写过关于引用的问题,这里重申一下:引用是给一个变量创建一个新的名字,而变量的值和存放的位置都是不变的。所以引用必须得被赋初值。引用的作用:一. 使用引用操作变量可以给任何变量建立引用,包括普通变量,结构体,指针,下面是给指针建立引用并操作它的例子:下面是定义引用并且初始化的方式:上面那个程序中,其实是可以通过修改Ref1 或者Ref2的值来修改o...

2018-06-02 23:22:52 246

原创 【C++】指针

首先,要记住,使用指针输出被指对象时候,需要写明要输出的对象格式,比如整形的话,是输出十六进制、十进制、八进制等,例如:这里p1指向的是整形,如果我想输出该整形的十进制形式,就得加上 这个“dec”,否则是不能输出十进制的!动态内存的分配:为了不浪费内存空间,可以分配动态内存,把这个动态内存的首地址放在一个指针里面,用完以后释放这个动态内存就好:可以看到动态内存的定义方法,以及释放方法:记住:1....

2018-06-02 20:41:36 309

原创 【C++】函数返回值

如果我想用void类型的函数,计算给定半径的圆面积,该怎么计算呢,像这样可以吗:答案是不可以的,这样写的话,函数不会把计算好的结果返回到实参,也就是说,函数传递了实参的值到形参的位置,并且在函数那块的地址对这两数进行了处理,却没有把结果返回实参的位置,实参还会保持原先的值不变。那么我想让实参的值也改变该怎么做呢?这时候需要按引用传递函数,也就是说,在编译的时候会让处理器不要把实参的值传递给形参,而...

2018-06-02 18:09:04 8613

原创 【C++】函数

说下重载函数:当几个函数的 名称, 返回值都一样,而参数不同,这样的函数成为重载函数。这样的函数通常是用来计算同一类型的东西,比如说计算体积,但对于球和圆柱体,计算的参数是不同的,这时候就可以用重载函数:...

2018-06-02 17:11:39 93

空空如也

空空如也

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

TA关注的人

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