自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 问答 (3)
  • 收藏
  • 关注

原创 2021-07-21Mac新手使用

Mac新手使用触控板手势滚动缩放:双指捏合放大或缩小滚动方向随手指移动双指左右滚动或旋转或上下启动台/显示桌面:捏拢/张开拇指和三指调度中心:三指向上轻扫快捷键打开终端:command+option+t按fn键选择F1,F2,F3等键,F1截图到达行首/尾:command + ←/→command+D : 复制当前内容删除:command+delete(回退键)最小化当前窗口:command+M最小化所有窗口:command+option+H+M

2021-07-21 17:30:23 359

原创 在partition中使用xfs文件系统时,sda没有足够的空间可以让grub2嵌入core.img

解决方法:手动删除未知分区未知分区在自定义分区下面,默认小三角没有拉开,将它拉开然后删掉其中的未知分区。

2021-03-22 19:35:12 1023

原创 leetcode每日一题:从前序和中序遍历构造二叉树

- 遍历pIndex操作优化:将中序遍历序列遍历一次,将数值和下标存储在unordered_map里- 递归时需要传入的参数:1: 前序遍历序列2:中序遍历序列3:前序遍历的左边界4:前序遍历的右边界5:中序遍历的左边界6:中序遍历的右边界7:存储中序遍历数值和下标的映射关系的unordered_map【来自leetcode 题解视频】...

2020-05-23 16:16:31 265

转载 非root用户启动docker

https://www.cnblogs.com/informatics/p/8276172.html

2019-12-11 10:11:47 3611

原创 进程间通信/RPC/Thrift RPC介绍

进程间通信(IPC)分为(1)本地过程调用(LPC)LPC用在多任务操作系统中,使得同时运行的任务能互相会话。这些任务共享内存空间使任务同步和互相发送信息。(2)远程过程调用(RPC)RPC类似于LPC,只是在网上工作RPC(Remote Procedure Call远程过程调用)是一种应用层协议,用于实现进程间通信,并封装了远程调用的细节。目前的RPC框架大致有两种不同的侧重方向,一...

2019-12-11 09:23:47 1133

原创 c++多个源文件访问同一个全局变量

分为3步:1.在A.cpp 中声明:extern int a;2.在A.cpp【注意和上面A.h对应】中定义:int a;或int a=0;\3.在其他源文件中直接访问即可c.cpp中:a=10;参考:https://www.cnblogs.com/invisible2/p/6905892.html...

2019-11-22 13:04:41 3486

原创 bug记录——头文件中的全局变量xxx重复定义

在多个cpp文件中都要访问main.h中的全局变量,所以在main.h中添加了A a;的定义。在不同的源文件中向a的各成员变量赋值。但是在没加static关键字时,编译一直报a变量在多个源文件中重复定义的错误。起初以为是因为main.h被多个源文件包含,所以重复包含的原因。但在main.h中添加只编译一次的语句后仍出现上述错误。加上static关键字后正常编译。网上搜了一篇博客...

2019-11-22 12:27:40 934 1

原创 bug记录——expected initializer before

错误现象:但是Tserver.h都是thrift库的头文件,不应该出错。最后发现是在报错的前一个头文件声明函数或者变量时少了一个分号导致下一个头文件报错。需要注意。...

2019-11-22 11:59:10 3829

原创 bug记录——macro names must be identifiers

用 以数字开头的.thrift文件(615A.thrift)生成cpp文件,其中会生成615A_types.h,内容是#ifndef 615A_TYPES_H#define 615A_TYPES_H。。。#endif编译报错:参考:https://www.cnblogs.com/justinyo/archive/2013/03/13/2957350.html宏定义不...

2019-11-21 13:26:56 341

原创 bug记录——C语言调用C++函数接口

结论当C语言 需要调用C++函数接口(比如func.h,func.cpp)时,func.h中不能出现c++特有的class定义或头文件包含。即:关于class的定义或含有class的头文件包含必须放在源文件中(如func.cpp中),不能放在头文件(func.h,无论是extern “C” 里还是exter "C"外)中一个小bug卡了好多天。。特此记录。。。证明main.c代码如下:#...

2019-11-20 12:32:29 288

原创 Effective C++笔记part 7、8、9

41.了解隐式接口和编译期多态classes和Templates都支持接口和多态:对class而言接口是显式的,以函数签名为中心。多态是通过virtual函数发生于运行期。对template参数而言,接口是隐式的,奠基于有效表达式。多态则是通过template具现化和函数重载解析发生于编译期。42.了解typename的双重意义template<class T> c...

2019-10-17 16:15:37 153

原创 Effective C++ 笔记 part 5、6

26.尽可能延后变量定义式的出现时间尽可能延后变量的定义知道能够给它赋初值实参为止,这样做可以增加程序的清晰度并改善程序效率。否则会付出不必要的构造和析构成本。 当遇到循环时:若一个class的一个赋值成本低于一组构造和析构成本,在循环外声明变量,尤其是循环次数很多的时候。否则应在循环里声明变量。27.尽量少做转型动作const_cast通常被用来将对象的常量性移除dynamic_c...

2019-10-15 21:03:52 126

原创 Effective C++ 笔记 part 3、4

13.以对象管理资源资源包括:内存、文件描述符、互斥锁、图形界面中的字型和笔刷、数据库连接、网络sockets 当不再使用资源时,一定要把它归还给系统以对象管理资源(资源取得时机便是初始化时机RAII :Resource Acquisition Is Initialization):把资源放进对象内,便可依赖c++的析构函数自动调用机制确保资源被释放 获得资源后理解放进管理对象中 ...

2019-10-12 20:33:17 118

原创 Effective C++ 笔记 part 1、2

Effective C++视 C++ 为一个语言联邦 C object-oriented C++面向对象:封装、继承、多态 Template C++泛型编程:包括TMP(Template Metaprogramming 模板元编程) STL:是一个Template程序库,包括容器、迭代器、算法、函数对象 宁以编译器替换预处理器尽量以 `const`、`enum`、`inli...

2019-10-11 15:40:06 112

原创 c++各种知识点总结

C++ 参考了https://interview.huihut.com1.const作用1. 修饰变量,说明该变量不可以被改变;2. 修饰指针,分为指向常量的指针(const T *指向常量的指针,先是常量类型,再是指针)和指针常量(T *const指针常量:指针在前 常量在后);3. 常量引用(const T&),经常用于形参类型,即避免了拷贝,又避免了函数对值的修改;...

2019-10-07 21:26:40 480

原创 ubuntu安装开发环境:VSCode、golang、git、redis、sublime及go插件、boost库、thrift等

1.VSCode方法一:依次输入如下命令1、sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make2、sudo apt-get update3、sudo apt-get install ubuntu-make4、umake ide visual-studio-code提示输入y即可方法二:在window...

2019-09-26 11:22:37 2561

原创 go 流程控制及函数相关

流程控制switchgo语言中的case不仅可以基于常量进行判断,也可以基于表达式进行判断,不用写break 一分支多值: case “1”,”2” 分支表达式:case 4>r &&r>2 // 这种条件下switch后不再跟判断变量(无判断目标) fallthrough关键字,执行完一个Case后会执行下一个case,不建议使用。goto可以退出...

2019-09-21 22:45:07 178

原创 go语言容器

数组声明var 数组变量名 [元素数量] T如:var team [3]string初始化在声明时初始化var team=[3]string{“1”,”2”,”3”}可以不写大小var team=[…]string{“1”,”2”,”3”}遍历for k,v:=range team{// k是元素下标,v是元素内容}二、slice从数组或slic...

2019-09-19 15:28:03 656

原创 go语言工具及命令

一.概述二、常用命令具体介绍go build编译命令:complie pakages and dependencies跨平台编译:env GOOS=linux GOARCH=amd64 go build指定目标平台,所编译出来的文件就是可以直接在目标平台上运行的二进制文件 附加参数 备 注 -v 编译...

2019-09-18 13:54:37 229

原创 golang语言test文件编写基础

一、test文件注意事项每个test文件必须import testing 每一个test case必须以Test开头且符合TestXxx形式(Test开头且接下来的第一个字母P大写),否则go test会直接跳过测试不执行 入参的类型必须为 t *testing.T (普通test)或b *testing.B(benchmark测试性能) 一般通过testXxx大小写区分开,让别的Tes...

2019-09-18 13:52:50 1077

原创 c++ 11/14新特性

1.auto关键字能够在赋值语句里推导类型,decltype能在任意场合下推导类型,但使用时必须在括号内写全表达式。auto只能用于赋值语句的类型推导,不能直接声明变量(因为无表达式供推导)auto总是推断出值类型而不是引用类型auto允许使用const/volatile/&/*等修饰,从而得到新类型auto&&总是推断出引用类型decltype (e)形式获得表...

2019-09-18 09:04:49 312

原创 python基础之——语法(from 莫烦python)

1.print字符串不可以直接和数字相加print(float(‘1.2’)+3) #float()是浮点型,可以把字符串转换成小数print(int(‘2’)+3) #int为定义整数型print(int(1.9)) #当int一个浮点型数时,int会保留整数部分2.基础数学运算在python中,^用两个表示,如3的平方为32 , **3表示立方,**4表示4次方,依次类推3.变...

2019-08-30 21:04:40 869

原创 c++ lambda表达式

1.lambda表达式一个lambda表达是定义了一个匿名函数。不同于一般函数的地方时,lambda可以捕获它们作用域内的变量然后使用它们。实现:[] (double value){return valuevaluevalue;}[] lambda引入符,[]内可以空或非空,()内是lambda参数列表{}内是lambda主体内可以有若干条语句,默认返回类型为返回值的类型,没有返回值的时...

2019-08-30 20:56:47 167

原创 STL算法、仿函数、配接器

STL算法、仿函数、配接器1.数值算法#include acculmate(first,last,初始值,[op])//[op]可选,当其为minus()时表示累减,multiplies() 乘,有初始值的作用之一是当输入区间为空时,认可获得一个明确定义的的结果inner_product(first1,last1,first2,init,[op1],[op2])//内积的定义a·b=a1b...

2019-08-30 20:26:53 269

原创 C++智能指针

1.智能指针智能指针是一个可以模仿原生指针的模板类,与原生指针有两点区别:1智能指针只能用来保存堆上分配的内存2不能像对原生指针那样,对智能指针进行一些自增或自减之类 的算术运算智能指针自动释放不需要的对象,消除了内存泄露的可能性。通常在自由存储区创建的对象使用智能指针而不是原生指针。可以在容器中使用智能指针,如果使用一个类的基类作为智能指针的类型参数,可以用它指向一个派生类对象。...

2019-08-30 20:23:14 241

原创 c++ stl使用与说明

1. for_each(起始迭代器,迭代器末尾+1,函数名); //对范围内的元素进行操作,比如print2.distance(first, last)函数用来计算两个迭代器的距离3.setprecision()函数实现格式控制 使用:#include <iomanip>cout << "a=" << setprecision(2) <<...

2019-08-28 22:38:04 197

原创 c++归并排序

/*** 递归:样本量发生了变化,但是过程可以复用* 写递归时先写base case,即递归退出条件* 压栈:父函数中所有的变量及行号信息都会压入栈,根据此信息依次返回父函数**//*** 归并排序:先用递归将左边的部分按顺序拍好,再将右边的部分按顺序排好* 归并:两个下标分别指向两部分的第一个数据,选较小的入辅助空间* 复杂度 :T{N} = 左部分T{N/2} + 右部...

2019-08-08 14:56:43 306

原创 windows下生成文件目录树

cmd进入命令窗口进入目标文件夹输入tree /f >xxx.txt后回车则目标文件夹下会生成xxx.txt文件,其内容为目标文件夹的文件目录树如下图:

2019-07-17 19:41:16 847

原创 将VSCode的终端设置为git-bash

将settings.json文件改成下图:注意标题和内容都要一致,否则可能会失败

2019-07-02 15:24:27 5012

转载 在右键菜单中添加 用VScode打开选项

复制如下代码,将其中的路径改为自己的VSCode安装路径,文件保存问xxx.reg后双击运行如果有提示选择确定Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\VSCode]@="Open with Code""Icon"="E:\\Program Files\\VScode\\Code.exe"[H...

2019-05-31 10:25:17 3674

转载 vxworks下logmsg

参考https://blog.csdn.net/mndlyt/article/details/19817229printf( ) - write a formatted string to the standard output stream (ANSI).logMsg( ) does not actually perform the output directly to the logg...

2019-05-23 20:06:53 2609

原创 java基础学习笔记(二)

1.负数的二进制表现形式是整数取反+1int 6: 0000-0000 0000-0000 0000-0110int -6:1111-1111 1111-1111 1111-1010integer.toBinaryString(x)//返回x的二进制的字符串表示形式System。out.println(" "+变量名);2.switch(表达式){ case 取值1:执行语...

2019-05-14 16:15:19 117

转载 为什么以太网最小帧长64B?以太网头部14字节可能带来的效率上的问题

1.参考:http://blog.sina.com.cn/s/blog_564fc50a0100lypt.html以太网是不可靠的,无连接的 尽力传输。使用CSMA/CD同时发送数据会发生碰撞。假设A检测到网络是空闲的,开始发数据包,尽力传输,当数据包还没有到达B时,B也监测到网络是空闲的,开始发数据包,这时就会发生碰撞,B首先发现发生碰撞,开始发送碰撞信号,所谓碰撞信号,就是连续的0...

2019-05-11 17:38:17 3379

原创 卸载WPS后安装office,office文档图标显示异常的解决方法

参考:https://blog.csdn.net/loveyuexibo/article/details/82049867文档图标显示为全白,或者像可执行程序的图标等首先找到自己的office安装路径,查找WORDICO.EXE,PPTICO.EXE,XLICONS.EXE路径,这几个文件一般在一个安装目录下。安装路径可能在C盘也可能在别的盘,找到对应的路径就行。win+r 输入r...

2019-05-06 21:25:50 6158 7

原创 Linux命令及说明【更新中】

1.yum install与yum groupinstall的区别 1,yum install 它安装单个软件,以及这个软件的依赖关系 2,yum groupinstall 它安装一个安装包,这个安装包包涵了很多单个软件,以及单个软件的依赖关系2.语言相关echo$LANG 可以查看当前使用的系统语言locale ...

2019-05-06 09:46:31 198

原创 C语言指针数组初始化

1.char类型的指针char*names[]={"zhangsan","lisi","wangwu"};//可以这样初始化这样,每个指针指向对应的字符串2.其他类型的指针int*nums[]={1,2,3,4,5};//不可以这样初始化原因:指针的初始化或赋值可以使用0值、常量表达式、和类型匹配的对象 的地址。//指针需要用地址初始化如上,字符串字面值常...

2019-05-06 09:24:41 30836 4

原创 网络IO复用模型

1.poll(epoll中的LT模式,电平触发模式)poll不支持边沿触发说明 监听套接字应该设置为非阻塞模式,否则会影响服务器的并发性ret是成功写入的数据大小,10000是想要写入的数据大小应该使用下右下角的连接套接字处理过程当数据包比较大时,一个数据包要进行两次read,一次read并没有把connfd所对应的接收缓冲区的数据都读完,那么connfd仍然是活跃的,我们应该...

2019-04-27 15:06:54 999

原创 HTTP协议

1.举例Cache-Control缓存控制是WEB开发中对性能提升最大的一部分,不仅仅是设置缓存过期时间。可以设置是否适用缓存,只在客户端缓存,缓存验证(last-modified配合if-modified-since验证或者stag配合if-none-match验证)Cookie用来保持会话信息Content-Type、Content-Encoding等用来约束数据类型CORS实现跨域并...

2019-04-15 22:32:15 520

转载 为什么要将应用程序打包

https://bbs.csdn.net/topics/392289289

2019-04-11 14:00:59 1083 1

原创 网口与串口的区别

串口有两种1.PC上的COM口COM口即串行通讯端口。微机上的com口多为9针,最大速率115200bps。通常用于连接鼠标(串口)及通讯设备(如连接外置式MODEM进行数据通讯)等。但目前主流的主板一般都只带1个串口,甚至不带。机箱后面,梯形的,两排,一排5个孔,一排4个孔一般有两个,就是com1 com2,背板上应该都标明的反正要么上1下2,要么左1右2 可以转接USB2...

2019-04-08 15:45:43 50370

空空如也

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

TA关注的人

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