自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (4)
  • 收藏
  • 关注

原创 BeyondCompare添加右键快捷方式

安装Begyond Compare后,在资源管理器关联工资单的复选框上勾选,依然无效,可以参考:https://www.scootersoftware.com/support.php?zz=kb_shellex方法:下载对应版本的 BCShellExFix.zip,放到 BeyondCompare 安装目录下解压,执行对应平台的reg文件即可...

2021-04-07 12:48:44 432

原创 go接口

接口实现原理和类型转换接⼝命名习惯以 er 结尾,结构体。接⼝只有⽅法签名,没有实现。接⼝没有数据字段。可在接⼝中嵌⼊其他接⼝。类型可实现多个接⼝。原理接⼝对象由接⼝表 (interface table) 指针和数据指针组成struct Iface{ Itab* tab; void* data;};示例:使用接口访问对象type User struct { id int name string}func main() { u :=

2020-10-26 23:57:51 689

原创 go面向对象方法的调用

go面向对象方法的调用在面向对象三大特征(封装、继承和多态)里面,go语言只有封装这个功能。但可以使用匿名字段包含,间接实现继承。type Resouce struct { _ uint8 id int}type User struct { Resouce //匿名字段,User间接继承自Resource name string}// 接收者类型为 User 时,可访问方法集全部为 User 的方法,简称 T 方法// 接收者类型类型 *User 时,可访问方法集为 User 和

2020-10-26 23:56:14 629

原创 go闭包和匿名函数

闭包和匿名函数1. 闭包闭包的概念:是可以包含自由(未绑定到特定对象)变量的代码块,这些变量不在这个代码块内或者任何全局上下文中定义,而是在定义代码块的环境中定义。要执行的代码块(由于自由变量包含在代码块中,所以这些自由变量以及它们引用的对象没有被释放)为自由变量提供绑定的计算环境(作用域)。闭包的价值 : 闭包的价值在于可以作为函数对象或者匿名函数,对于类型系统而言,这意味着不仅要表示数据还要表示代码。支持闭包的多数语言都将函数作为第一级对象,就是说这些函数可以存储到变量中作为参数传递给其他函数,最

2020-10-26 23:44:11 170

原创 go重要数据类型分析

go重要数据类型分析1. 值类型和引用类型值类型:包括基本数据类型,如 int、float、bool、string以及数组和结构体;值类型不管是否已经赋值,编译器都会为其赋值,此时值存储在栈上。引用类型:包括指针、slice切片、map、chain 和 interface;引用类型必须申请内存才能使用,常用的创建内存函数有new和make.1.1 newfunc main() { var i *int i = new(int)//new的参数是一个类型,分配好内存后,返回一个指向该类型内存地址

2020-10-26 23:41:22 501

原创 安装liteide

安装liteide参考文档:http://liteide.org/en/doc/install/https://blog.csdn.net/JasBin2008/article/details/109265574安装 Qtsudo apt-get install qt5-default安装 qtchoosersudo apt-get install qtchooser注意:如果是手动安装qt,需要修改 /usr/lib/x86_64-linux-gnu/qtchooser/qt5.

2020-10-24 20:52:36 365

原创 ubuntu 18.04 配置qtchooser

ubuntu 18.04 配置qtchooser安装和配置qtchooser安装 qtchoosersudo apt-get install qtchooser安装指定qt版本的配置qtchooser -install Qt5.13 /usr/local/Qt/5.13.2/gcc_64/bin/qmake查看 qt 版本配置qtchooser -l45Qt5.13qt4-x86_64-linux-gnuqt4qt5-x86_64-linux-gnuqt5注意:系统默

2020-10-24 20:48:12 844

原创 Vcpkg的使用

Vcpkg的使用一、安装Vcpkg1. 下载 vcpkg,并在Window下安装PS> git clone https://github.com/Microsoft/vcpkg.git2. 编译vcpkgPS> cd vcpkgPS> .\bootstrap-vcpkg.bat# Linux:~/$ ./bootstrap-vcpkg.sh二、集成到系统环境1. 集成到全局.\vcpkg.exe integrate install.\vcpkg.exe integ

2020-09-22 10:42:57 1038 1

原创 安装IOS

安装IOS1. 软件环境cmake >=3.5.0macOS10.13.isodarwin.isoCommand_Line_Tools_macOS_10.12_for_Xcode_9.1.dmgXcode_9.0.1.xipMacPorts(可选)注意:macos 和 darwin.iso镜像下载地址:链接:https://pan.baidu.com/s/19TgKCrlHyDM53kqitQhnZA提取码:epo4xcode下载地址(需要注册APPID):https

2020-09-16 13:54:10 327

原创 Android安装go

Android安装go方法1 通过 brew 安装gobrew install go方法2 通过pkg,鼠标点击安装下载 go,直接安装

2020-09-16 11:43:03 584

原创 在linux上使用android ndk交叉编译openssl1.0.2常见问题

1. makedepend: not foundapt-get install xutils-dev2. target already defined - linux-x86_64 (offending arg: android-armv7)参考:https://wiki.openssl.org/index.php/Android打开文件: bipay/patches/openssl-android.shmkdir prebuilt/$1. ./openssl-android-env.sh

2020-09-14 18:11:49 1006

原创 Linux安装Rust

Linux安装Rust官方链接rust教学1. 配置源export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-staticexport RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup其它可用源有: http://mirrors.rustcc.cn2. 下载rust2.1 一键安装Linux下安装,有以下三种方法curl --proto

2020-08-31 14:16:04 1916

原创 Linux下安装go

Linux下安装go下载go下载地址:https://studygolang.com/dl配置环境# Goexport GOROOT=/usr/local/goexport GOPATH=/home/user/workspace-goexport PATH=$PATH:$GOPATH:$GOROOT/binexport GOPROXY=https://goproxy.cn添加代理export GO111MODULE="on"export GOPROXY=https://mirrors

2020-08-31 11:31:32 141

原创 Ubuntu挂载新磁盘

本章节主讲述怎样难申请的阿里云分配挂载的磁盘!1. 查看未使用的磁盘:fdisk -l2. 新建分区fdisk /dev/vdc3. 查看分区fdisk -l4. 格式化分区mkfs -t ext4 /dev/vdc5. 查看磁盘UUIDblkid /dev/vdc6. 创建/data挂载目录并挂载mkdir /datavim /etc/fstab7. 重启reboot附加:临时挂载硬盘# 先查看一下当前系统中所能找寻到的硬盘信息fdisk -l

2020-05-17 22:44:14 160

原创 Ubuntu安装MySQL并支持ROOT远程登录

Ubuntu安装MySQL1.查看系统有没有安装MySQL$ dpkg -l | grep mysql2.下载MySQL$ apt install mysql-server3.查看MySQl运行状态$ netstat -nltp$ ps -ef | grep mysql4.登录此时登录提示: ERROR 1045 (28000): Access denied for user ‘root’@'localhost’解决办法:1)查看/etc/mysql/debian.cnf,即可

2020-05-17 18:23:14 180

原创 Ubuntu开机启动自定义服务

1.在/etc/systemd/system创建scanner.service 文件[Unit]Description=Protocol Scanner ServiceAfter=multi-user.target network.target[Service]Type=simpleExecStart=/home/user/Distribute/scanner/ProtocolScannerRestart=alwaysRestartSec=10User=userGroup=user

2020-05-17 14:28:37 442

原创 Ubuntu安装ibus-pinyin输入法

1、安装Chinese语言包(一般情况下已经被勾选,安装上了)鼠标依次点击System Settings–>Language Support–>Install/Remove Languages这里完成的只是中文语言包的安装,还并不能使用中文输入法。所谓iBus pinyin输入法,这个pinyin输入法是基于iBus(全称 Intelligent Input Bus,下一代输入法框架),这个输入法框架的,所以还有要安装iBus框架。2、安装iBus框架键盘按CTRL+ALT+T,打开终

2020-05-17 14:22:03 1260

原创 Ubuntu安装轻量级桌面

安装轻量级桌面LXDEUbuntu默认桌面太占用内存了,本人的小本本太烂了,所以退而求其次,安装轻量级桌面!使用以下命令安装$sudo apt-get install lxde重新启动进入登录界面,选择lxde即可开机进入命令行或桌面执行下面命令开机进行命令行$sudo systemctl set-default multi-user.target执行下面命令启动到桌面$sudo systemctl start lightdm恢复到默认桌面$systemctl set-defa

2020-05-17 14:14:03 4137

原创 Ubuntu入门

一、Ubuntu的发音Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意义的,您不是第一个为此困惑的人,当然,也不会是最后一个:)大多数的美国人读 Ubuntu 时,将 u 作为元音发音,类似单词 who 或者 boo ,重音在第二个音节即 u’buntu ,oo-boon-too 。如果您喜欢撒哈拉,喜欢它令人窒息的温柔、梦幻般的寂寥还有张扬恣肆的旷远,您大可在第一个 u,后面带些嗡嗡声: oom-boon-too。Ubuntu的中文发音大约为: 乌班图

2020-05-17 09:30:16 807

原创 04 cmake关于find_packet使用

本章要讨论的问题:如何使用切换多个版本的依赖包?学习find_packet,并掌握以下内容:明确find_packet() 的查找顺序使用find_packet()找到非cmake构建安装的包find_packet()的用法find_packet()有两种模式,Module模式和Config模式,其中Module模式是基础用法,Config模式较为复杂。Module模式下,如果按照...

2020-02-11 20:42:59 603

原创 01 正则表达式(regex)入门

引言正则表达式(regular expression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。正则表达式可以用来:验证字符串是否符合指定特征,比如验证是否是合法的邮件地址。用来查找字符串,从一个长的文本中查找符合指定特征的字符串,比查找固定字符串更加灵活方便。用来替换,比普通的替换更强大。比较好的学习工具推荐:1. 正则表达式规则1.1...

2020-02-06 21:09:41 932

原创 08 Gib子模块

一 子模块的添加添加子模块非常简单,命令如下:git submodule add <url> <path>其中,url为子模块的路径,path为该子模块存储的目录路径。执行成功后,git status会看到项目中修改了.gitmodules,并增加了一个新文件(为刚刚添加的路径)查看修改内容,可以看到增加的子模块,并且新文件下为子模块的提交hash摘要gi...

2020-02-06 13:39:58 266

转载 07 GitLab使用规范

项目组GitLab使用规范1. 基本信息1)项目组GitLab地址2)协作开发模式开发人员采用fork主仓库的方式进行开发。为简化开发过程,方便代码集成。主仓库仅包括两个常驻分支master和hotfix。两个分支都是受保护的。master是代码主分支,主要的开发、代码集成、发布都在此分支上进行。hotfix用于临时bug修复或问题处理。3)成员角色项目组成员包含两种权限Master...

2020-02-06 13:39:01 413

转载 06 Git分支管理

Git分支管理一、主分支Master首先,代码库应该有一个、且仅有一个主分支。所有提供给用户使用的正式版本,都在这个主分支上发布。Git主分支的名字,默认叫做Master。它是自动建立的,版本库初始化以后,默认就是在主分支在进行开发。二、开发分支Develop主分支只用来分布重大版本,日常开发应该在另一条分支上完成。我们把开发用的分支,叫做Develop。这个分支可以用来生成代码的...

2020-02-06 13:38:23 155

转载 05 Git远程操作

Git远程操作Git有很多优势,其中之一就是远程操作非常简便。本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Git远程操作。git clonegit remotegit fetchgit pullgit push一、git clone远程操作的第一步,通常是从远程主机克隆一个版本库,这时就要用到git clone命令。$ git clone &...

2020-02-06 13:35:20 124

转载 04 Git命令清单

常用的 Git 命令清单下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。Workspace:工作区Index / Stage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库# 在当前目录新建一个Git代码库$ git init# 新建一个目录,将其初始化为Git代码库$ git init [project-name]...

2020-02-06 13:34:30 84

原创 03 Git环境配置

一、环境配置添加sshssh-keygen -t rsa -b 4096 -C "[email protected]"加快Git下载速度1)Host路径:C:\Windows\System32\drivers\etc2)参考网址https://www.ipaddress.com/,加入以下内容:140.82.113.3 github.com199.232.5.194 gith...

2020-02-06 13:31:48 135

原创 02 Git添加sshkey

1.安装好git后右击桌面可以看到git bash here,点击进入desktop;2.进入desktop之后进入ssh目录:输入 $ cd ~/.ssh3.进入 /.ssh 后修改用户名和邮箱(自定义)$ git config --global user.name "yourname"$ git config --global user.email "[email protected]"4.生...

2020-02-06 13:30:50 122

原创 01 Git下载

版本控制版本控制分为集中式版本控制和分布式版本控制。集中式版本控制适合于局域网,带宽够大,下载更新速度可观,常见的版本控制有CVS、SVN。如果集中式版本控制放到互联网上,下载速度不容乐观,这就产生了分布式版本控制。分布式版本控制系统的安全性要高很多,因为每个人的电脑上都是一个完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。常见的分布式版本控制有GitGit...

2020-02-06 13:25:38 93

原创 03 cmake常见问题

问题1: relocation R_X86_64_32 against `.text’ can not be used when making a shared object; recompile with -fPIC方法:在CMakeLists.txt中添加编译选项-fPIC,有两种方法# 1)在需要编译成库的CMakeLists.txt中添加add_compile_options(-fP...

2020-02-06 11:25:33 200

原创 02 cmake使用案例

本章节通过一个工程介绍下cmake工程各个模块。使用JetBrains Clion开发工具组织代码。代码已上传至《https://github.com/jasbin2008/cmake-learn.git1. 多个源文件组织创建一个工程,添加以下文件(代码内容自行编写,这里只介绍cmake是怎么组织的):操作步骤:1)在根CMakeLists.txt中配置所有子目录下的源文件# ./...

2020-02-06 11:24:13 342

原创 01 cmake参考手册

cmake使用手册(V1)1、cmake 查阅cmake --help-module-list | findstr -i bz2、项目目录相关# 构建发生的目录CMAKE_BINARY_DIRPROJECT_BINARY_DIR<projectname>_BINARY_DIR# 不论采用何种编译方式,都是工程顶层目录CMAKE_SOURCE_DIRPROJECT...

2020-02-06 10:45:18 293

原创 02 主板

一 什么是主板主板就是由集成电路和插槽构成的电路板,为其他硬件提供安装位置、供电和其他功能。可以理解成可以为硬件提供住处的电路板,就是装硬件的,主板就像一条条道路,将各个硬件联通起来。二 主板的分类1 通用分类——按照芯片组分类以及命名说到芯片组,不得不简单介绍一下什么是主板芯片组。芯片是具有处理能力的集成电路,芯片组就是多块芯片组成的一个组。以前主板芯片组分为南北桥芯片组,北桥NB(no...

2020-02-06 10:35:46 463

原创 01 cpu

Intel CPU型号官方解释https://www.intel.cn/content/www/cn/zh/processors/processor-numbers.htmlCPU型号处理器型号有一些后缀,比如M、QM(MQ)、XM(MX)、T、S、TE、E、EQ、K、H(HQ)、R、U(UM)、Y等。后缀说明M移动版处理器QM(MQ)四核移动版处理器X...

2020-02-06 10:34:10 662

原创 05 数字证书

数字证书回到数字签名章节,我样知道数字签名的作用就是验证数据来源以及数据完整性!解密过程则称为数字签名验证。只有数字签名还不行,依然会存在些问题:案例1:公钥是公开的并且可以自行导入到电脑,如果有人比如C偷偷在B的电脑用自己公钥替换了A的公钥,然后用自己的私钥给B发送Email,这时B收到邮件其实是被C冒充的但是他无法察觉。答案:确实存在这种情况!解决办法就是数字证书。案例2:浏览...

2020-02-06 10:20:38 238

原创 04 非对称加密

非对称加密1 简介非对称加密算法,又称为公开密钥加密算法。它需要两个密钥,一个称为公开密钥 (public key),即公钥,另一个称为私有密钥 (private key),即私钥。因为加密和解密使用的是两个不同的密钥,所以这种算法称为非对称加密算法。如果使用公钥对数据进行加密,只有用对应的私钥才能进行解密。如果使用私钥对数据进行加密,只有用对应的公钥才能进行解密。2 常见算法2....

2020-02-06 10:03:13 257

原创 03 对称加密

对称加密1 简介对称加密算法是应用较早的加密算法,又称为共享密钥加密算法。在对称加密算法中,使用的密钥只有一个,发送和接收双方都使用这个密钥对数据进行加密和解密。这就要求加密和解密方事先都必须知道加密的密钥。数据加密过程:在对称加密算法中,数据发送方将明文(原始数据)和加密密钥一起经过特殊加密处理,生成复杂的加密密文进行发送。密钥加密明文密文数据解密过程:数据接收方收到密文后,若想读取原...

2020-02-04 12:07:52 296

原创 02 散列算法

散列算法1 简介它的典型应用是对一段信息产生信息摘要。2 常见算法2.1 MD5算法MD5用的是哈希函数,它的典型应用是对一段信息产生信息摘要,以防止被篡改。严格来说,MD5不是一种加密算法而是摘要算法。无论是多长的输入,MD5都会输出长度为128bits的一个串 (通常用 16 进制 表示为 32 个字符)。2.2 SHA1算法SHA1 是和 MD5 一样流行的消息摘要算法,然而 ...

2020-02-04 12:05:33 187

原创 01 数字签名

数字签名1. 定义数字签名简单来说就是通过提供可鉴别的数字信息验证自身身份的一种方式。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。分别由发送者持有能够代表自己身份的私钥(私钥不可泄露),和接收者持有与私钥对应的公钥,能够在接收到来自发送者信息时用于验证其身份。2. 签名过程2.1 发送方签名过程发送报文时,发送方用一个哈希函数从报文文本中生成报文摘要,然后用自己的...

2020-02-04 12:04:11 340

原创 07 MSB和LSB

最高有效位(MSB - Most Significant Bit)最高有效位(MSB) 指二进制中最高值的比特。在16比特的数字音频中,其第1个比特便对16bit的字的数值有最大的影响。例如,在十进制的15,389这一数字中,相当于万位(1)对应的数字对数值的影响最大。比较与之相反的“最低有效位”(LSB)。汇编中,比如8位2进制数10000001,其中第一个1是MSB,第二个1是LSB。在计...

2020-02-04 11:02:30 678

Word2010使用教程

这篇文档主要讲解了Word的使用教程,作为 Office 套件的核心程序, Word 提供了许多易于使用的文档创建工具,同时也提供了丰富的功能集供创建复杂的文档使用。哪怕只使用 Word 应用一点文本格式化操作或图片处理,也可以使简单的文档变得比只使用纯文本更具吸引力

2019-02-21

C++ODBC方式连接数据库

现在很多人开始用 VS2010 的 C++了,以前大家都是从 VC6.0 开始使用,对 6.0 比较熟悉,网上很多关于连接数据库的方法都是针对 VC6.0 的,很多人用 2010 用了一段时间之后不随手就放弃了,继续使用 VC6.0.作者作为一名 VS2010 版本 开始学习使用的人在数据库连接的时候也遇到很多问题,在这里和大家分享如下

2019-02-21

程序员笔记软件

程序员自备笔记本,树状结构,拓扑知识,可以使用word编辑,也可以存储文档,资料链接,个人使用了4年了,推荐给大家。。。

2018-07-15

读取Excel表数据实例

本软件简单实现读取Excel数据,生成Oracle的DML脚本的功能,欢迎初学者参考

2015-03-22

空空如也

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

TA关注的人

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