自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue中v-bind=“$attrs“和v-on=“$listeners“的含义

vue中v-bind="$attrs"和v-on="$listeners"的含义;假定自定义了一个组件 ComponentB, props 接收了name, age两个参数, ComponentA在调用ComponentB时这么调用:<componentB :name="_name" :age="_age" :address="_address" :phone="_phone" @playBall="_playBall" @study="_study">而

2021-03-12 17:19:12 2127

原创 常用第三方库

1.cookie.js-cookie:https://www.npmjs.com/package/js-cookie1.1. 安装及引用:npm install js-cookie --saveimport Cookies from 'js-cookie'1.2.用法:1>存入数据至cookie:// Create a cookie, valid across the entire site:Cookies.set('name', 'value');// ...

2020-05-20 23:48:54 278

原创 Vue过滤器

参考:https://www.jianshu.com/p/ad21df1914c5

2020-02-12 18:03:20 171

原创 vue-router的使用方式

step1:下载安装npm i vue-router -Sstep2:main.js中引入import VueRouter from 'vue-router'step3:安装插件Vue.use(VueRouter)step4:创建路由对象并配置路由规则let router = new VueRouter({ routes: [{ path: '/ho...

2019-10-25 20:14:59 209

原创 Vue.config.productionTip = false是什么意思

Vue.config.productionTip = true

2019-10-25 15:12:38 951

原创 封装post请求与get请求

1.封装post请求step1:引入axioscode:import axios from 'axios'step2:创建axios实例code:const instance = axios.create({ baseURL: 'https://some-domain.com/api/', timeout: 1000, headers: {'X-Custom...

2019-10-25 11:29:49 1700

原创 vue学习笔记

1.npm引入某个包:step1:vscode终端命令:npm install @xunlei/xl9 --save-dev 命令完成后,会在当前项目的目录文件下引入,如图所示:2.js文件中引用。code:import xl9 from '@xunlei/xl9'2.Deferred2.1.Deferred拥有Promise2.2.Deferred具备...

2019-10-25 10:45:23 457

原创 git回滚提交

references:1.https://www.zhihu.com/question/481783802.https://blog.csdn.net/u010416101/article/details/781426973.https://www.jianshu.com/p/6c32b768a31a4.https://blog.csdn.net/qq_34975710/artic...

2019-10-23 14:42:27 1075

原创 vue学习笔记

0.父子组件的生命周期。父子组件的生命周期1.监听组件的生命周期例:父组件需要在子组件mounted的时候,调用某个函数,常规写法如下:// Parent.vue<Child @mounted="doSomething"/>// Child.vuemounted() { this.$emit("mounted");}这里提供一种特别简单的方式,子组件不需...

2019-10-17 17:51:13 143

原创 vue cli入口文件解析

1.入口文件的概述。在vue cli构建的项目中,main.js是项目的入口文件,定义了vue实例,并引入根组件app.vue,将其挂在到index.html中id为'app'的节点上。如图,main.js,app.vue,index.html文件的结构如下图所示:各个文件的作用:一.main.js,程序入口文件,初始化vue实例并使用需要的插件;二.app.vue...

2019-10-17 15:37:59 651

原创 兼容HTML DOM classList属性

页面DOM里的每个节点均有一个classList对象,我们可以使用里面的方法新增/删除/修改/删除节点上的CSS类。但是在IE9/IE10之前的版本不支持这个属性,下面的代码是为了解决这个问题的。if (!("classList" in document.documentElement)) { Object.defineProperty(HTMLElement.prototype...

2019-10-17 15:16:58 217

原创 Vue.use注册全局插件

step1: 构建插件例如:创建plugin.js文件,在此文件中定义插件。(插件中必须要有install方法,且函数参数为Vue,options)const plugin = { install (Vue, options) { // 添加全局方法或者属性 Vue.myGlobMethod = function () {}; // 添加全局指令 Vu...

2019-10-10 21:30:37 676

原创 Vue路由判断前进后退

//注册全局方法 Vue.prototype.push = (url: string, closeTransition: boolean = false) => { //前进 Vue.prototype.transitionName = "slide-left"; this.$router.push(url);}; Vue.prototype.pop = ...

2019-10-10 21:10:59 3591 1

原创 Vuex学习系列

一.vuex初探二.vuex初探二三.vuex初探三—仓库拆分四.vuex初探—mapState,mapActions五.vuex初探五

2019-10-10 20:51:13 109

转载 前向纠错(FEC)之纠删码原理(EC)

References:纠删码解析

2019-02-25 11:09:50 2102

原创 计算机网络复习

1、dns解析过程。1&gt;检查浏览器缓存;2&gt;检查系统缓存;3&gt;路由器缓存;4&gt;ISP DNS缓存;5&gt;根域名服务器;6&gt;顶级域名服务器;7&gt;主域名服务器;8&gt;保存结果至缓存。 2、ARP协议。IP地址转换为mac地址。 3、RARP协议。 ...

2018-09-30 17:36:26 150

原创 std::shared_ptr的简单实现

#ifndef STD_SHAREDPTR_H#define STD_SHAREDPTR_H#include &lt;stdint.h&gt;#include &lt;algorithm&gt;using namespace std;template&lt;typename T&gt;class My_SharedPtr{ My_SharedPtr(): ...

2018-09-28 16:01:58 1349

原创 C++面试基础知识复习系列—六

1、strcpy的实现。 char *strcpy(char *dst, const char *src){ if(!dst||!src) return nullptr; char* p=dst; while(*scr!='\0'){ *(p++)=*(src++); } *p='\0';...

2018-09-19 20:15:00 212

原创 C++面试基础知识复习系列—五

1、extern关键字。表明变量或者函数的定义在别得文件中,提示此编译器遇到此变量或者函数时在其他模块寻找定义。1&gt;假定a.h中定义了 int a=10;b.cpp与c.cpp同时include "a.h",则编译不成功,因为a重复定义;2&gt;假定a.h中有static int a=10;则可以,因为b.cpp与c.cpp中的a仅仅是名字相同,地址空间不同;3&gt;假定a....

2018-09-18 15:48:14 144

原创 C++面试基础知识复习系列——四

1、查找;查找算法 平均时间复杂度 空间复杂度 查找条件 顺序查找 O(n) O(1) 无 二分查找 O(log2n) O(1) 有序 哈希查找 O(1) O(n) 无 二叉查找树 O(log2n)     红黑树 O(log2n)     B/B+树 O(...

2018-09-11 20:49:50 174

原创 C++面试基础知识复习系列——三

1、STL容器; 容器类型 底层数据结构 有序/无序 可重复 其他 vector 数组 无 是 支持快速随机访问 list 双向链表 无 是 支持快速增删 deque 双端队列 (一个中央控制+ 多个缓冲区) 无 是 1、支持首尾快速增删 ...

2018-09-11 20:02:55 151

原创 C++面试基础知识复习系列——二

1、类的对象在内存中所占空间的分析;参考:https://blog.csdn.net/shufac/article/details/37915147;1&gt;空类,占用一个字节。原因,为了区分不同类的实例。2&gt;在没有虚函数的类的对象中,类的对象所占空间的大小分析方式与struct类型所占空间的大小相同,只需要计算非静态数据成员。因为成员函数的函数地址被保存在的代码段,而数据成员...

2018-09-11 16:06:34 401

原创 C++面试基础知识复习系列——一

1、const关键字的作用。1&gt;修饰变量,说明该变量不可修改;2&gt;修饰指针,分为常量指针与指针常量。example1:int* const p=&amp;a;指针常量,*p=8,ok;p=&amp;b,错误;example2:const int *p=&amp;a;常量指针,*p=8,错误;p=&amp;b,OK;3&gt;修饰引用,常用于形参类型,即有利于...

2018-09-11 13:21:20 269

原创 socket IO

一、I/O模型I/O模型:一个输入操作通常包括两个阶段:1&gt;等待数据准备好;2&gt;从内核向进程复制数据。对于一个套接字上的输入操作,第一步通常涉及等待数据从网络中到达。当所等待的分组到达时,它被复制到内核中的某个缓冲区。第二步就是把数据从内核缓冲区复制到应用进程缓冲区。unix下有五种I/O模型:*阻塞式I/O*非阻塞I/O*I/O复用(select/poll/e...

2018-08-22 21:27:01 229

转载 STL迭代器类型推导

1.https://blog.csdn.net/gettogetto/article/details/51579522;

2018-08-08 16:10:59 151

转载 epoll多路复用API

1、https://blog.csdn.net/displayMessage/article/details/81151646;2、https://blog.csdn.net/zjf280441589/article/details/44206383;

2018-08-01 16:23:27 346

转载 回调函数

1.https://blog.csdn.net/lixiaogang_theanswer/article/details/80400259;

2018-07-22 17:47:39 112

原创 为什么unsigned (-1)表示无符号整数的最大值

1、整数在计算机中的表示。在计算机中,整数采用补码表示。当前主流编译器中整型在内存中占用四个字节,共32位。2、原码、补码、补码。原码:第一位为符号位,其余位表示数值,如-1的原码:1,000...0001(两个1之间32个0)。反码:正数的补码就是其原码;负数的反码为符号位不变,数值位按位取反。如-1的补码为1,111...1110。补码:正数的补码就是其原码。负数的补码为=...

2018-07-20 17:54:17 17714 3

原创 使用STL algorithm来轻松解决几道面试题

1、生成一个序列的全排列。题一:生成N个不同元素的全排列。测试代码://测试函数int main(){ char elements[]={'a','b','c','d'}; const int N=sizeof(elements)/sizeof(elements[0]); std::vector&lt;char&gt; intArray(elements,...

2018-07-18 09:32:33 559

原创 STL复习之算法五

1、next_permutation() 。next_permutation()会取得[first,last)所标示之序列的下一个排列组合。如果没有下一个组合,便返回为false;否则,当前序列被排序成当前序列的下一个序列并且返回为true。算法实现:template &lt;class _BidirectionalIter, class _Compare&gt;bool __ne...

2018-07-17 20:15:10 137

原创 STL复习之算法四

   1、unique。算法unique能够移除重复的元素。每当在区间[first,last)内有重复元素群,它便移除该元素群中的第一个以后的连续的重复元素。注意,unique只能移除连续的相邻的连续元素,如果想要移除所有(包括不相邻的元素)重复元素,需要先对序列排序,使所有重复的元素都相邻。测试代码:void traverseEle(const std::vector&lt;int&g...

2018-07-17 16:09:20 173

原创 STL复习之算法三

1、rotate(s,m,l),将区间[m,l)序列的元素整体移动到区间[s,m)前面。返回为void。函数原型:template&lt;class ForwardIterator,class Distance&gt;void __rotate(ForwardIterator first,ForwardIterator middle,ForwardIterator last,Dist...

2018-07-17 10:59:22 135

原创 STL复习之算法二

  1、search(s1,e1,s2,e2)。在序列[s1,e1)内寻找序列[s2,e2)第一次出现的位置,若后者并不在前者的区间内,则返回前者区间的末尾,即e1。函数原型: template&lt;typename _ForwardIterator1, typename _ForwardIterator2, typename _BinaryPredicate&gt; ...

2018-07-16 14:51:16 157

原创 STL复习之算法一

1、set_uinon。即求两集合之并集。注意到两个set集合必须是有序的。实现: template&lt;typename _InputIterator1, typename _InputIterator2, typename _OutputIterator, typename _Compare&gt; _OutputIterator __set_un...

2018-07-15 13:45:14 141

原创 STL复习之——hashtable

1、二叉搜索树具有对数平均时间的表现,但这样的表现依赖于输入数据具有足够的随机性。hashtable在插入、删除。搜寻等操作上也具有“常数平均时间”的表现,而且这种表现是以统计为基础,不依赖与输入数据的随机性。2、在找元素的存储位置时的使用的hash函数主要有三种。这三种方法都是为了解决不同的元素被hash函数映射到同一位置,引起冲突的问题。一、线性探测法;二、二次探测法;三、开链法。下图是以开链...

2018-07-14 17:58:13 182

原创 STL复习之——红黑树

1、应用:STL中的关联容器,如set、map等都是以红黑树作为底层容器。2、基本定义:2.1、每个节点不是红色就是黑色;2.2、根节点为黑色;2.3、如果节点为红,则其子节点必须为黑。2.4、任一节点至NULL(树尾端),所含 之黑节点数必须相同。 2、插入节点需要旋转的四种情形,《STL源码剖析》第210页~211页。3、调整红黑树的结构的代码。3.1、左旋。template &lt;clas...

2018-07-13 15:46:54 151

原创 Revolver源码解析之——RUDP Socket类实现解析

1、类间关系类图。【1】类间关系。【2】类图。//To do

2018-07-11 21:13:46 1498

原创 Revolver源码解析之——RUDP发送速率控制器

1、功能:实现带宽评估、发送窗口决策、RTT与RTC的计算。2、成员函数解析。[1].处理接收到的ACK。void RUDPCCCObject::on_ack(uint64_t ack_seq){ if(ack_seq &lt;= last_ack_id_) { return; } uint32_t space = (uint32_t)(ack_seq - last_ack_i...

2018-07-11 15:04:21 682

原创 Revolver源码解析之——接收缓冲区与其滑动窗口

1、基本定义:接受缓冲区的滑动窗口的定义。typedef map&lt;uint64_t, RUDPRecvSegment*&gt; RecvWindowMap;key为数据片的ID,value为指向数据片的对象指针。用来接收连续的数据片的队列缓冲定义typedef list&lt;RUDPRecvSegment*&gt; RecvDataList;记录丢失的数据片的ID与丢失时间戳的map。ty...

2018-07-10 21:05:42 300

原创 Revolver源码解析之——发送缓冲区与其滑动窗口

1、发送数据片的结构体定义。//发送数据片typedef struct tagRUDPSendSegment{ uint64_t seq_; uint64_t push_ts_; //进入发送队列的时刻 uint64_t last_send_ts_; //最后一次发送的时刻 uint16_t send_count_; //发送的次数 uint8_t data_[MAX_SE...

2018-07-10 20:29:03 237

空空如也

空空如也

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

TA关注的人

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