自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (1)
  • 问答 (3)
  • 收藏
  • 关注

原创 Linux跨平台编译安卓版本protobuf库——趟坑记录

1 目标源码编译2.6.1版本 android protobuf库2 准备2.1 获取protobuf源码1、下载源码:https://github.com/protocolbuffers/protobuf获取v2.6.1 tag对应源码;2、进入protobuf目录,运行:./autogen.shTip:可能存在错误,提示gtest获取失败;原因2.6.1版本过旧,脚本中的gtest链接已失效;根据提示手动将gtest拷贝到指定位置即可(注意gtest版本)3、跨平台编译andro

2021-08-03 15:28:47 426

原创 WinRAR注册+去广告教程

1、注册在WinRAR安装目录创建rarreg.key文件, 拷贝如下内容并保存:RAR registration dataFederal Agency for Education1000000 PC usage licenseUID=b621cca9a84bc5deffbf6412612250ffbf533df6db2dfe8ccc3aae5362c06d54762105357d5e3b1489e751c76bf6e0640001014be50a52303fed29664b0741457e

2021-07-27 10:22:44 1698

原创 vscode remote ssh 远程开发免密登陆方

vscode remote ssh 远程开发免密登陆方使用vscode远程插件remote-ssh使用vscode远程插件remote-sshVSCode安装remote-ssh插件后,可以远程登录开发机工作。但每次打开的时候都需要手动输入密码,非常繁琐,Google了一个免密登录的方法,使用ssh-keygen -t rsa 在本地用户目录下.ssh生成一对密钥,id_rsa和id_rsa.pub。如果本地目录已经有该文件则不用在重新生成。然后把公钥id_rsa.pub的内容追加到服务器/home/

2021-07-09 10:55:36 591

原创 string、const char*、 char* 、char[]相互转换

一、转换表格源格式\目标格式stringconst char*char*char[]string–const char*=string.c_str();const char*=string.c_str(); char*=<const_cast><char*>(const char*);for(int i=0;i< string.length();i++) { char[i]=string[];}const char*string =

2021-04-26 16:27:09 140

转载 图解TCP协议——重传机制、滑动窗口、流量控制、拥塞控制

TCP协议是可靠传输协议,老生常谈的知识点,之前的知识点都是网上阅读博客,接收的一直是零零散散的碎片,为了加深了解,这篇博客来总结下TCP协议是如何保障可靠的。为了实现可靠性传输,需要考虑很多,如数据的破坏、丢包、重复、以及分片顺序混乱等问题。TCP是通过序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠性传输的。TCP的主要机制包括:重传机制、滑动窗口、流量控制、拥塞控制。1、重传机制TCP 实现可靠传输的方式之一,是通过序列号与确认应答。在 TCP 中,当发送端的数据到达接收主机

2020-06-13 21:21:04 1108

原创 C++/后台 面试问题总结

目录C++1、C++多态性与虚函数表①C++多态的实现②虚函数的作用③为什么析构函数需要定义成虚函数④为什么构造函数不能是虚函数?⑤析构函数能抛出异常吗?⑥不能在构造、析构函数中调用虚函数2、智能指针①auto_ptr②shared_ptr③weak_ptr④unique_ptr3、C++内存管理①C++内存分为哪几块?每块存储哪些变量?4、C++11新特性网络1、TCP与UDP①TCP三次握手与...

2020-05-16 09:47:39 518 2

原创 C特性——持续学习更新

1、attribute关键字__attribute__也可以对结构体(struct)或共用体(union)进行属性设置。大致有六个参数值可以被设定,即:aligned, packed, transparent_union, unused, deprecated和may_alias。attribute((deprecated)) 管理过时的代码在开发一些库的时候,API的接口可能会过时,为了...

2020-04-30 12:48:19 333

原创 C++11特性——STL容器push_back与emplace_back

C++11新加入了emplace_back():如果要将一个临时变量push到容器的末尾,push_back()需要先构造临时对象,再将这个对象拷贝到容器的末尾,而emplace_back()则直接在容器的末尾构造对象,这样就省去了拷贝的过程。上代码:#include <iostream>#include <cstring>#include <vector&...

2020-04-27 09:47:43 658 1

原创 leetcode136——只出现一次的数字

链接:https://leetcode.com/problems/single-number/description/给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 :输入: [2,2,1]输出: 1分析:题目要求线性时间复杂度,即O(n)。能立即想到的方...

2020-03-17 11:53:32 112

原创 广度优先搜索与最短路径问题

《算法图解》上看到的分析思路,把广度优先搜索直接与最短路径问题放在一起,mark一下1、BFS解决最短路径问题假设要从双子峰前往金门大桥。你想乘公交车前往,并希望换乘最少。可乘坐的公交车如下:为找出换乘最少的乘车路线,你将使用什么样的算法? 一步就能到达金门大桥吗?下面突出了所有一步就能到达的地方:金门大桥未突出,因此一步无法到达那里。两步能吗?金门大桥也未...

2020-03-12 11:46:56 2405

原创 如何理解快速排序的时间复杂度是O(nlogn)

选择排序、冒泡排序等算法的时间复杂度都比较好理解,但不是很清楚快速排序的时间复杂度为什么是O(nlogn)。从《算法图解》中看到的思路,很赞,解决了一直以来的疑惑。引用自《算法图解》:快速排序的情况比较棘手,在最糟情况下,其运行时间为O(n2)。。在平均情况下,快速排序的运行时间为O(nlogn)。1、平均情况与最糟情况快速排序的性能高度依赖于你选择的基准值。最糟情况假设你总是将第一...

2020-03-06 11:19:19 24904 3

转载 C++11特性——右值引用与移动构造函数

面试时遇到的问题,之前的了解是浅尝辄止,但合格的程序媛应该不能止于此。左值引用和右值引用先理解两个概念:左值和右值。早期C语言给出的定义是:左值是一个表达式,可以出现在=的左边或右边;但右值只能出现在右边。 这个定义太模糊了。到了C++中,可以这么理解:对于一个表达式,凡是对其取地址(&)操作可以成功的都是左值,否则就是右值。 好了,下面我们看几个例子来加深下理解:int x = 4...

2020-02-28 15:02:29 424

转载 看懂UML类图和时序图

这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系; 能看懂类图中各个类之间的线条、箭头代表什么意思后,也就足够应对 日常的工作和交流; 同时,我们应该能将类图所表达的含义和最终的代码对应起来; 有了这些知识,看后面章节的设计模式结构图就没有什么问题了;本章所有图形使用Enterprise Architect 9.2来画,所有示例详见根目录下的design_patterns.E...

2019-12-05 16:31:41 121

原创 c++中default、explicit、override、final、volatile关键字(持续更新)

C++ 的类有四类特殊成员函数,它们分别是:默认构造函数、析构函数、拷贝构造函数以及拷贝赋值运算符。这些类的特殊成员函数负责创建、初始化、销毁,或者拷贝类的对象。如果程序员没有显式地为一个类定义某个特殊成员函数,而又需要用到该特殊成员函数时,则编译器会隐式的为这个类生成一个默认的特殊成员函数。例如:class X{ private: int a; }; X x;上述程序中,...

2019-11-14 11:13:17 969

转载 shell脚本中的if 参数-a至-z

[-a file] 如果file存在则为真不过貌似有时候-a表示为and:条件与[-b file] 如果file存在且是一个块特殊文件则为真[-c file] 如果file存在且是一个字特殊文件则为真[-d file] 如果file文件存在且是一个目录则为真-d前的!是逻辑非例如:if [ ! -d $lcd_path/$par_date ]表示后面的那个...

2019-11-08 09:21:19 565

原创 Linux下运行opencv的两种方式

原来一直是在Windows下用的opencv,按照网上大神的方法,在工程里加入各种依赖库,直接VS生成可执行文件就ok。但是在Ubuntu下安装使用opencv已经被搞了两天了……总结一下~~0、测试opencv是否安装成功可以通过下面的命令查看opencv的版本信息,如果有输出版本信息的话,说明到目前为止是顺利的。pkg-config --modversion opencv...

2019-11-05 10:43:54 4221 1

转载 SSL/TLS协议运行机制的概述

转自https://www.ruanyifeng.com/blog/2014/02/ssl_tls.html最近在整理MQTT的接入,了解到接入时可以设置SSL/TLS配置;不明所以,遂百度到如下优秀博文。互联网的通信安全,建立在SSL/TLS协议之上。本文简要介绍SSL/TLS协议的运行机制。文章的重点是设计思想和运行过程,不涉及具体的实现细节。如果想了解这方面的内容,请参阅RFC文...

2019-10-11 16:57:41 115

转载 Go调优神器trace介绍

Go调优神器trace介绍go tool trace 功能go tool trace 使用什么时候go tool trace不合适转自: https://studygolang.com/articles/9693go tool trace 功能go tool trace可以显示大量的信息,所以从哪里开始是个问题。 我们首先简要介绍使用界面,然后我们将介绍如何查找具体问题。go tool tr...

2019-09-20 10:27:42 1822

原创 VS Code C++ 代码格式化方法(clang-format)

前提条件安装扩展C/C++,扩展程序将自动安装clang-format。clang-format默认安装路径为"C:\Users\Users\.vscode\extensions\ms-vscode.cpptools-0.16.1\LLVM\bin\clang-format.exe"首选项设置打开首选项设置【ctrl + ,】C_Cpp:Clang_format_style...

2019-09-16 15:24:43 14410 3

转载 [Golang] 关于Sync.Map的使用

转自https://blog.csdn.net/sc_lilei/article/details/81390185简介:sync.Map这个数据结构是线程安全的(基本类型Map结构体在并发读写时会panic严重错误),它填补了Map线程不安全的缺陷,不过最好只在需要的情况下使用。它一般用于并发模型中对同一类map结构体的读写,或其他适用于sync.Map的情况。关于sync.Map的源...

2019-06-29 16:55:18 638

转载 公钥,私钥和数字签名这样最好理解

转自https://blog.csdn.net/21aspnet/article/details/7249401转自https://blog.csdn.net/chengqiuming/article/details/83047116一、公钥加密假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥。我有一个文...

2019-06-27 10:18:44 203

转载 go语言path包和filepath包的学习与使用

转自https://www.cnblogs.com/jkko123/p/6923962.htmlpath包的使用package main; import ( "fmt" "path") //go语言path包的学习 func main() { //返回路径的最后一个元素 fmt.Println(path.Base("./a/b/c")); ...

2019-06-20 15:33:00 1529

转载 git同步远程仓库分支

转自https://www.jianshu.com/p/811b07b129e8git同步远程仓库分支git命令1.何谓同步远程分支?有下面几种情况,1.本地有新分支,远程仓库没有。 2.远程仓库有新分支,本地没有。3.本地删除了分支,远程也想删除。4.远程删除了分支,本地也想删除。第一种情况很好解决,将本地分支推送到远程仓库即可。本文主要...

2019-06-14 19:35:06 6306

原创 安装 paho mqtt golang包

由于great wall的原因,不能直接访问golang.org,直接运行"go get github.com/eclipse/paho.mqtt.golang",进行安装,会发生错误。解决方法如下:运行“git clonehttps://github.com/golang/net.git” 拷贝net目录到“$GO_PATH/src/golang.org/x”目录下 ...

2019-06-13 10:11:23 1499

原创 MQTT入门

特点:Quality of Service,Retained Messages,Persistent Session,Last Will and Testament,Keep Aliveandmore.服务质量,保留的消息,持续会话,遗嘱,保持活动和更多〇、客户端首先需要连接代理一、发布当qos为1(至少一次)时,代理向客户端发送PUBACK确...

2019-06-11 15:40:17 111

原创 Understand安装与使用

安装在虚拟机Ubuntu上安装该软件,参考https://blog.csdn.net/qq_36355662/article/details/62887174#commentBox,超赞的教程!在我的虚拟机上的使用虚拟机安装位置:/home/application/启动软件命令:sz@sz:/home/application/understand/scitools/bi...

2019-04-26 15:36:58 7667

转载 nc命令传输文件和目录

转自:https://blog.csdn.net/mtj66/article/details/74959287方法1,传输文件演示(先启动接收命令)使用nc传输文件还是比较方便的,因为不用scp和rsync那种输入密码的操作了把A机器上的一个rpm文件发送到B机器上需注意操作次序,receiver先侦听端口,sender向receiver所在机器的该端口发送数据。 步骤...

2019-04-20 09:51:36 3540

原创 go-callvis的安装

1、直接按照官网的命令安装的话:go get -u github.com/TrueFurby/go-callviscd $GOPATH/src/github.com/TrueFurby/go-callvis && make在第二个命令运行后会出现dep命令不存在的错误,也就是需要先安装dep;2、现在安装dep,按照github官网安装:curl https:...

2019-04-10 20:38:27 2241

转载 Go的json解析:Marshal与Unmarshal

转自:https://blog.csdn.net/zxy_666/article/details/80173288作者:滢光点点来源:CSDN原文:https://blog.csdn.net/zxy_666/article/details/80173288简介Json(Javascript Object Nanotation)是一种数据交换格式,常用于前后端数据传输。任意一...

2019-04-10 14:14:53 5278 1

原创 解决gdb list No symbol table提示

list命令后显示No symbol table is loaded. Use the "file" command.原来编译用:gcc -o filename filename.c解决办法,编译时加 一定要加-g:gcc -o filename -g filename.c

2019-04-09 13:44:54 1427

原创 Go语言入门——学习笔记(1)

一、Go 语言的基础组成有以下几个部分:包声明 引入包 函数 变量 语句 & 表达式 注释package mainimport "fmt"func main() { /* 这是我的第一个简单的程序 */ fmt.Println("Hello, World!")}除了基本的组成与C++的差异外,值得注意的地方是:在Go语言中,当标识符以一个大写...

2019-04-09 12:22:06 134

原创 Ubuntu下Go的安装

步骤本身算是很简单的,但是算是踩了坑吧...Go的安装1、我一般测试系统是否安装软件,就直接查询版本信息:$ go version2、然后直接使用系统提示的语句进行安装的:(心太大了)奉劝诸位不要这样安装!$ apt-get install golang-go3、之后查询版本信息,发现是go1.6.2【太老了==】4、后来发现从官网上下载源码安装,没有卸载原来...

2019-04-08 21:23:15 347

转载 C++风格与C风格的字符串(string V.S. char* V.S. char [])

转自:https://www.cnblogs.com/Pillar/p/4206452.html目录一、string转char*1.data()方法2.c_str()方法一、string转char*  主要有三种方法可以将str转换为char*类型,分别是:data(); c_str(); copy();1.data()方法string str = "hello"...

2019-03-29 10:27:40 255

转载 CGI与FastCGI HTTP

转自:https://www.cnblogs.com/wanghetao/p/3934350.html最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html。事物总是不 断发展,网站也越来越复杂,所以出现动态技术。但是服务器并不能直接运行 php,asp这样的文件,自己不能做,外包给别人吧,但是要与第三做个约定,我给你什么,然...

2019-03-22 10:01:29 280

转载 Linux常用命令学习

转自https://www.cnblogs.com/gaojun/p/3359355.html1、ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文件,包含以.开始的隐藏文件...

2019-03-09 14:54:44 134

原创 虚拟机安装Ubuntu

安装14.04在后面使用深度学习架构时会出现各种问题,因此按照网上教程安装主流的Ubuntu16.04; 安装后测试是否可以联网,以及本机ip地址1.输入:ifconfig查看本机ip地址;2.输入:pingwww.baidu.com查看是否可以联网利用Xshell软件连接虚拟机输入命令等;根据密码,ip地址等连接;若连接不上,则测试:(Ubuntu默认不安装openssh服务...

2019-03-09 14:07:10 371

转载 在VMWare虚拟机中安装Ubuntu 16.04.5 LTS

作者:iqmae68024来源:CSDN原文:https://blog.csdn.net/iqmae68024/article/details/54772918二、开始安装1、运行VMWare,创建新的虚拟机,选择“典型”,下一步;2、选择“稍后安装操作系统”,下一步;3、选择“Linux”,“Ubuntu 64位”,下一步;4、填写虚拟机名称,选...

2019-03-08 19:31:06 346

原创 【Google代码规范】之——格式

1、行长度(有争议)每一行代码字符数不超过 80。2、非 ASCII 字符尽量不使用非 ASCII 字符,使用时必须使用 UTF-8 格式。3、空格vs.制表位(Space vs. Tabs)只使用空格,每次缩进2个空格。使用空格进行缩进,不要在代码中使用tabs,设定编辑器将tab转为空格。4、函数声明与定义返回类型和函数名在同一行,合适的话,参数也在同一行。函数...

2019-03-08 15:37:58 893

原创 【Google代码规范】之——命名约定

命名风格直接确定的命名实体是:类型、变量、函数、常量、宏等等,无需查找实体声明,人体大脑的模式匹配引擎依赖于这些命名规则。1、通用命名规则函数命名、变量命名、文件名命名具有描述性,不能过度缩写,类型和变量名应为名词,函数名应用“命令性”动词。尽可能给出描述性名称,不能节约空间,让别人很快理解你的代码:int num_errors; //good...

2019-03-08 10:32:01 1095

原创 Coursera C++程序设计——运算符重载为友元函数

一般将运算符重载为类的成员函数,重载为友元函数的情况:1.成员函数不能满足使用要求;2.普通函数不能访问类的私有成员。将运算符重载为成员函数的情况:class Complex{ double real, imag; public: Complex(double r, double i):real(r),imag(i){} Complex operator+(...

2019-02-25 16:38:30 277

空空如也

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

TA关注的人

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