自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 操作系统中进程与线程

进程是具有一定功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源调度和分配的一个独立单位。每个进程有一个地址空间和一个控制线程(也可多个),进程定义。线程是进程的实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。一个进程可以有多个线程,多个线程也可以并发运行。每个进程中的内容每个线程中的内容地址空间程序计数器全局变量寄存器打开文件堆栈子进程状态即将发生的报警信号与信号处理程序账户信息.

2021-04-12 16:40:32 122

翻译 计算机网络

1、五层网络协议体系结构的理解应用层应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间的通信和交互的规则。对于不同的网络应用需要不同的应用层协议。在互联网中应用层协议很多,如域名系统DNS,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议等等。应用层交互的数据单元称为报文运输层运输层的主要任务就是负责向两台主机进程之间的通信提供通用的数据传输服务。应用进程利用该服务传送应用层报文。通用的是指并不针对某一个特定的网络应用,而是多种应用可以使用同一个运输层服务。

2021-04-09 19:47:01 178

原创 计算机网络相关知识点

计算机网络七层模型应用层(数据)表示层(数据)会话层(数据)传输层(数据报文)网络层(数据分组)数据链路层(帧)物理层(比特)TCP/IP四层模型应用层:应用进程->文件传输协议(FTP)、域名服务(DNS)、超文本传输协议(HTTP)传输层:TCP/UDP网络层:ICMP/IGMP/ARP/RARP/IP网络协议 IP网络接口层:网络接口七层架构简述物理层:主要定义物理设备标准,如网线的接口类型、各种传输介质的传输速率等。主要作用是传输比特流(由1、0转化为电流

2021-01-25 10:20:05 572

原创 C++知识点总结

一、static关键字的作用1、静态成员的特点(1)static数据成员通常类内声明,类外定义;(2)static数据成员只能在类的外部进行初始化;(3)static数据成员可以是该成员所属的类类型,而非static数据成员只能自身类的引用或者指针;(4) static数据成员可以用作类成员函数的默认实参;(5)static数据成员的值可以改变。2、静态成员和非静态成员的区别(1)静态变量使用static修饰符进行声明,在类被实例化时创建,通过类和对象都可以进行访问;(2)不带有stati

2021-01-21 10:37:49 646

原创 程序的内存模型——new运算符

C++中的new操作符知识点1:C++中利用new操作符在堆区开辟数据知识点2:堆区开辟的数据,由程序员手动开辟,手动释放,释放利用delete知识点3:语法 new 数据类型如下图所示代码所示,利用new创建的数据,会返回该数据对应的类型的指针int* func(){ int* a=new int(10); return a;}int main(){ int *p=func(); cout<<*p<<endl; cout

2020-09-29 21:23:29 200

原创 程序的内存模型——内存四区

C++ 程序的内存模型——内存四区一、程序运行前1、代码区存放CPU执行的机器指令代码区是共享的,目的是对于频繁被执行的程序,只需要在内存中有代码即可代码区是只读的,使其只读在于防止程序意外修改指令2、全局区全局变量和静态变量存放在此全局区还包含了常量区,字符串常量及其他都在此该区域的数据在程序结束后由操作系统释放二、程序运行后1、栈区由编译器自动分配释放,存放函数的参数值、局部变量还有形参数据等注意:不要返回局部变量的地址、栈区开辟的数据由编译器自动释放2、堆区由程序员分配释

2020-09-29 21:05:10 164

原创 C++ 继承

继承1、通过继承联系在一起的类构成一种层次关系。2、通常在层次关系的根部有一个基类,基类负责定义在层次关系中所有类共同拥有的成员。//公共页面class BasePage{public: void Header() { cout << "首页 公开课 登录 注册 。。。。。。。。。。。。。(公共头部)" << endl; } void footer() { cout << "帮助中心 站内地图 交流合作 。。。。。。。。。。(公共底部)

2020-08-23 21:00:08 106

原创 C++ 关系重载运算符

关系运算符==1、C++中定义相等运算符,它们会比较对象的每一个数据成员,只有当所有对应的成员都相等时才认为两个对象相等。代码如下:class Person{public: Person(string name, int age) { this->m_Name = name; this->m_Age = age; } bool operator==(Person& p) { if (this->m_Name == p.m_Name&&

2020-08-23 20:38:20 157

原创 C++ 赋值重载运算符

赋值重载运算符1、赋值重载代码如下:class Person{public: Person(int age) { m_Age = new int(age); } //重载运算符 Person& operator=(Person &p) { if (m_Age != NULL) { delete m_Age; m_Age = NULL; } //提供深拷贝,解决浅拷贝的问题 m_Age = new int(*p.m_Age);

2020-08-23 20:26:05 196

原创 C++ 重载操作符+

重载操作符+1、成员函数实现“+”号运算符重载class Person{public: Person(){}; //切记这里要加{} Person(int a, int b) { this->m_A = a; this->m_B = b; } //成员函数实现“+”号运算符重载 Person operator+ (const Person& p) { Person temp; temp.m_A = this->m_A + p.m_A;

2020-08-23 20:12:33 160

原创 C++友元

全局函数做友元1、类可以允许其他类或者函数访问它的非公有成员,方法是令其他类或者函数成为它的友元。2、如果类想把一个函数作为它的友元,只需要增加一条以friend关键字开始的函数声明语句即可,具体操作如下代码如下:class Building{ friend void goodGay(Building *building);public: Building() { this->m_Sittingroom = "我的客厅"; this->m_Bedroom = "我的卧室

2020-08-23 17:28:19 142

原创 C++ 常函数

常函数1、成员函数后加const后,我们称这个函数为常函数。2、常函数内不可以修改成员属性。3、成员属性声明时加关键字mutable后,在常函数中依然可以修改4、声明对象前加const称该对象为常对象。5、常对象只能调用常函数代码如下:class Person{public: void showPerson() const { //this->m_A = 100; this->m_B = 100; //this = NULL; } void func(){

2020-08-23 17:05:53 304

原创 C++ 类的静态成员和非静态成员

类的静态成员不占据类对象的字节数1、一个空类占用字节数为1;2、int整形变量占据的字节数为4;class Person{ int m_A; //非静态成员变量,属于类的对象上 static int m_B; //静态成员变量,不属于类的对象上 void func(){} // 非静态成员函数,不属于类的对象上 static void func1(){} //静态成员函数,不属于类的对象上};3、测试代码 Person p1; cout << "size

2020-08-23 16:49:30 392

原创 C++ 静态成员变量

静态成员变量1、成员变量和成员函数前加上关键字static,称为静态成员。2、静态成员变量:所有对象共享一份数据、在编译阶段分配内存、类内声明,类外初始化。class Person{public: static int m_A;private: static int m_B;};int Person::m_A = 100;int Person::m_B = 100;上诉为类Person的定义,下面代码作为检测Person p1; p1.m_A = 150; cout <

2020-08-23 16:03:43 2347

原创 C++ 函数的占位参数

函数占位参数,占位参数也可以有默认函数1、C++中函数的形参列表可以有占位参数,用来作占位,调用函数时必须填补该位置。2、语法:返回类型 函数名(数据类型){}3、占位参数也可以有默认值4、占位参数若有默认值,调用时也可以不填补#include <iostream>using namespace std;//函数占位参数,占位参数也可以有默认函数void func(int a, int){ cout << "this is func" << en

2020-08-16 11:34:41 1391

原创 C++ new 操作符的使用

new 操作符1、语法new 数据类型,利用new创建的数据,会返回该数据对应的类型的指针。2、new和deleteC++利用new操作符在堆区开辟数据,堆区开辟的数据,由程序员手动开辟,手动释放(delete)3、代码如下所示 int* arr = new int[10]; for (int i = 0; i < 10; i++) { arr[i] = i + 100; } for (int i = 0; i < 10; i++) { cout &lt

2020-08-16 10:41:21 179

原创 C++ 容器vector类的相关操作

C++ 容器 vector的相关操作一、capacity容量vector的容量永远大于或等于其大小,一旦容量等于大小,便是满载,下次再有新增元素,整个vector容器就得另寻居所。1、c.capacity(); …不重新分配内存空间的话,c可以保存多少元素2、c.reserve(); …分配至少能容纳n个元素的内存空间 vector<int> v; for (int i = 0; i < 10; i++) { v.push_back(i); cout <

2020-08-15 16:31:58 198

原创 C++ 栈 Stack

栈符合先进后出的数据结构栈操作包括:1、top输出栈顶元素;2、pop弹出栈顶元素;3、size栈的大小;4、push入栈;5、pop出栈;栈不提供遍历访问,因此没有迭代器 stack<int> s; s.push(10); s.push(20); s.push(30); s.push(40); while (!s.empty()) { //输出栈顶元素 cout << s.top() << endl

2020-08-15 15:53:31 180

原创 C++ deque容器的相关操作

标题 C++ deque 容器一、deque的构造函数1、c.push_back(k),在c的尾部创建一个值为t或由args创建的元素。返回void2、c.push_front(t),在c的头部创建一个值为t或由args创建的元素.返回void deque<int> d; d.push_back(10); d.push_back(20); d.push_back(30); d.push_back(40); printDeque(d);输出:10 20 30 40请

2020-08-15 15:43:51 174

原创 C++ 容器 string类

C++ 容器 string类一、string类的构造函数1 默认构造 string s1;2 拷贝构造 string s2(s1);3 有参构造 string s3(“aaa”);4 两个参数有参构造 string s4(3,‘c’);// string类的构造函数 string s1; //默认构造 string s2(s1); //拷贝构造 string s3("aaa"); //

2020-08-15 15:02:57 256

原创 SDN和NFV

1、SDN方面SDN大致功能:SDN能够进一步加强对移动通信网络的灵活管控SDN核心思想:将网络设备中的数据平面和控制平面进行分离,并且对控制平面进行编程。这样有助于底层网络资源的抽象与网络视图的集中管理,并以虚拟资源的形式为上层应用平面提供服务。数据平面:主要负责数据的处理、转发以及状态信息的收集。主要设备就是交换机,包括物理交换机和虚拟交换机。控制平面:主要负责控制数据平面决策以及对网络的管理,控制平面主要由SDN控制器构成,能够获取网络的全局信息,并能够根据业务的需要进行网络信息的全局调配和

2020-05-31 09:30:09 1124 2

空空如也

空空如也

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

TA关注的人

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