- 博客(386)
- 资源 (106)
- 收藏
- 关注

原创 Go语言图形界面开发:Go版GTK
本人录制的Go入门视频go语言开发实战:https://pan.baidu.com/s/1bqOR9qZ Go语言GUI编程:https://pan.baidu.com/s/13yoUhqEUyrT_9bpi7K0rYQ初识GTK01、GUI概述 02、GTK简介 03、环境搭建(windows)Go语言快速入门04、Go入门教程Hello GTK05、一...
2018-02-08 21:17:27
266810
20

原创 Go入门教程
本人录制的Go入门视频go语言开发实战:https://pan.baidu.com/s/1bqOR9qZ Go语言GUI编程:https://pan.baidu.com/s/13yoUhqEUyrT_9bpi7K0rYQ基础编程01、Go语言介绍 02、环境搭建 03、第一个Go程序04、命名、变量、常量 05、基础数据类型 06、格式化输出、类型转换、类型别名 07、...
2018-01-19 10:06:11
140844
3

原创 C++11新特性学习
1、什么是C+11C++11标准为C++编程语言的第三个官方标准,正式名叫ISO/IEC 14882:2011 - Information technology -- Programming languages -- C++。在正式标准发布前,原名C++0x。它将取代C++标准第二版ISO/IEC 14882:2003 - Programming languages -- C++成为C++语言...
2017-09-03 15:07:50
136248
4

原创 protobuf入门教程
1、简介和安装2、消息类型3、proto3 与 proto2 的区别4、常用序列化/反序列化接口5、repeated限定修饰符6、枚举(enum)、包(package)7、导入定义(import)8、protobuf免费教学视频...
2017-07-02 11:41:29
40965
1

转载 为什么你要写博客?
一个选择我知道现在可能说这话有点不合时宜,毕竟博客时代都已经过去了,再号召大家用过就好像时的东西是不是有点逆流而上?我曾经也问过自己这个问题,但是我觉得,博客时代过去跟我们要开博客是没有多大关系的,就好像你的读书时代已经过去你就不再读书一样。判断一件事情值不值得去做有一个方法:在一张白纸的左边写不值得做的原因,然后在右边写值得做的原因,写完一比较,一权衡,自然能够得出结果。大家都成年人了,你会觉得...
2015-09-23 13:55:08
23832
5

原创 一步步学习Linux多任务编程
系统调用01、什么是系统调用?02、Linux系统调用之I/O操作(文件操作)03、文件描述符的复制:dup(), dup2()多进程实现多任务04、进程的介绍05、Linux可执行文件结构与进程结构06、多进程实现多任务(一):fork()07、多进程实现多任务(二):vfork()08、进程的控制:结束进程、等待进程结束09、Linux特殊进程之僵尸进程10、Linux特殊进程之孤儿进程11、...
2015-06-04 10:56:55
207796
11

原创 Linux高级网络开发奇妙之旅
一、基础理论篇01、网络协议入门02、LAN、WAN、WLAN、VLAN 和 VPN 的区别03、IP 地址介绍04、广播地址介绍05、无连接和面向连接协议的区别06、因特网的IP协议是不可靠无连接的,那为何当初不直接把它设计为可靠?07、C/S和B/S架构的区别二、初级实践篇08、编程准备:字节序、地址转换09、套接字的介绍10、UDP编程11、绑定( bind )端口需要注意的问题12、UDP...
2015-04-14 17:07:15
205994
5

原创 一步步学习Linux开发环境搭建与使用
00、Linux开发环境搭建与使用1——Linux简史01、Linux开发环境搭建与使用2——Linux系统(ubuntu)安装方案02、Linux开发环境搭建与使用3——通过虚拟机安装系统(ubuntu)03、Linux开发环境搭建与使用4——ubuntu更新设置04、Linux开发环境搭建与使用4——Linux必备软件之Samba05、Linux开发环境搭建与使用5——Linux必备软件之SS...
2015-03-18 15:13:57
138772
3

原创 C语言也能做界面:踏上GTK+学习之旅
00、背上行囊1——程序员学习之道01、背上行囊2——为什么要学习GTK02、背上行囊3——GUI概述03、背上行囊4——GTK简介04、背上行囊5——GTK环境搭建( Linux )05、背上行囊6——GTK环境搭建( windows )06、踏上旅途1——一个简单的空白窗口07、踏上旅途2——控件的添加08、踏上旅途3——布局容器之水平布局09、踏上旅途4——布局容器之垂直布局10、踏上旅途5...
2015-01-15 14:58:23
64194
7
原创 STC8_USBCDC模拟串口收发数据
之前做遥控手柄时,使用usb hid烧录的,不是用串口,也就是说无法用串口打印信息,不方便调试代码,于是,写了一个STC8_USBCDC模拟串口收发数据的代码。
2024-01-04 11:41:49
993
原创 dbeaver安装和使用教程
文章目录一、简介二、安装教程三、使用教程1. 连接MySQL数据库2. 查看表数据3. 查看表属性3. SQL编辑器和控制台一、简介dbeaver是一款的数据库连接工具,免费,跨平台。官网:https://dbeaver.io/下载地址:https://dbeaver.io/download/二、安装教程打开软件,默认弹窗,关闭即可三、使用教程1. 连接MySQL数据库选择MySQL连接填写数据库服务器信息和下载驱动常用功能2. 查看表数据3.
2022-01-09 19:19:18
142167
22
原创 Postman参数化
一、没有使用参数化请求url:https://postman-echo.com/postjson请求体:{ "user":"admin", "pwd":"abc1234"}断言代码:pm.test("用户名密码正常,登陆成功", function () { var jsonData = pm.response.json(); pm.expect(jsonData.data.user).to.eql("admin"); pm.expect(json
2021-11-02 15:37:24
17725
4
原创 windows安装VMwareWorkstation问题汇总
之前在window10平台下安装VMwareWorkstation,遇到各种问题,在此汇总遇到的一些问题和解决方案。一、蓝屏VMwareWorkstation虚拟机一打开就蓝屏解决方案打开Windows平台的虚拟机平台如重启电脑,再打开虚拟机,出现如下错误:出现如上问题的原因,系统和VMware不兼容导致请安装最新版本的高版本VMware(如果16版本)二、没有开启BIOS虚拟化出现如上问题是,没有开启BIOS虚拟化,请自行百度如何开启BIOS虚拟化,不同电脑打开B
2021-09-02 17:10:30
3470
2
原创 VMwareWorkStation安装和简单使用
以下操作在windows下完成一、安装双击安装包,默认配置安装即可接受许可协议无需检查更新和假如客户体验点击许可证按钮按要求输入许可证请支持正版,请支持正版二、导入安装好的Linux系统解压安装好的Linux系统打开解压后现有的虚拟机开启虚拟机点击 “我已复制该虚拟机”三、简单使用输入登陆用户名密码,进入系统打开终端关机...
2021-08-20 11:25:46
452
原创 Linux远程连接工具:finalshell
一、finalshell介绍前面一直使用xshell作为Linux远程连接的工具,教程请看《通过xshell远程连接ubuntu》。但是,xshell是付费软件。于是,找到一个finalshell作为其替换软件。FinalShell是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求.特色功能:云端同步,免费海外服务器远程桌面加速,ssh加速,本地化命令输入框,支持自动补全,命令历史,自定义命令参数更多介绍,请自行百度,或查看官网介绍:http
2021-08-19 22:40:25
52539
22
原创 Ubuntu Navicat 英文显示乱码解决方案
版本说明Ubuntu版本:Navicat版本:Ubuntu Navicat 英文显示乱码问题如下:配置文件已经配置好,Ubuntu Navicat 英文显示还是乱码:解决方案打开Navicat,通过配置解决问题。1. 工具->选项2. 修改字体格式3. 重新打开软件...
2020-03-13 19:41:40
1218
转载 Linux系统编程——多线程实现多任务
每个进程都拥有自己的数据段、代码段和堆栈段,这就造成进程在进行创建、切换、撤销操作时,需要较大的系统开销。为了减少系统开销,从进程中演化出了线程。为了让进程完成一定的工作,进程必须至少包含一个线程。线程存在于进程中,共享进程的资源。更多详情,请看《进程和线程的区别与联系》。
2020-02-26 09:29:02
37442
8
转载 ROC曲线与AUC指标
本文为优快云博主「ice110956」的原创文章,转自: https://blog.youkuaiyun.com/ice110956/article/details/20288239ROC曲线ROC曲线的动机对于0,1两类分类问题,一些分类器得到的结果往往不是0,1这样的标签,如神经网络,得到诸如0.5,0.8这样的分类结果。这时,我们人为取一个阈值,比如0.4,那么小于0.4的为0类,大于等于0.4...
2019-11-22 16:36:17
1644
原创 Anaconda matplotlib中文乱码解决
1. 下载字体https://www.fontpalace.com/font-download/SimHei/2. 安装字体2.1 windows和mac下:双击安装即可2.2 如果其他可以把自己拷贝到指定目录先找到目录import matplotlibmatplotlib.matplotlib_fname()把字体拷贝到指定目录3. matplotlibrc配置...
2019-11-06 16:24:56
2786
转载 Python Web开发最难懂的WSGI协议,到底包含哪些内容?
本文转自: https://segmentfault.com/a/1190000011365430我想大部分Python开发者最先接触到的方向是WEB方向(因为总是有开发者希望马上给自己做个博客出来,例如我),既然是WEB,免不了接触到一些WEB框架,例如Django,Flask,Torando等等,在开发过程中,看过一些文档总会介绍生产环境和开发环境服务器的配置问题,服务器又设计web服务器和...
2019-02-13 12:07:00
1612
原创 关于Python中正则使用findall和分组的一个坑
首先,findall有两种用法:import rere.findall(string[, pos[, endpos]])re.findall(pattern, string[, flags])这里讲的是第二种,里面有一个坑。测试代码:import rexxx = "a123ca456c"ret = re.findall(r"a(123|456)c", xxx)...
2018-04-26 23:12:11
3254
1
转载 分布式、中间件和消息队列到底是怎么的一种工作模式?
本文转自:悟空问答分布式相对于以前单一系统,所有的功能,服务都部署在一台服务器上,一挂全挂!分布式采用了把系统提供的服务分布在不同的服务器上的策略,这样的架构就叫做分布式架构!我有一个系统A,提供一个很简单的接口,根据员工编号查询员工姓名和他的考勤记录。我拆开两个系统:人员管理系统B和考勤系统C,分别部署在两台服务器上。这个需求,需要调用一下系统B,再调用一下系统C,最后得...
2018-03-21 12:06:12
4747
转载 罗胖精选 | 做产品最重要的是格局
本文转自:罗胖精选 | 做产品最重要的是格局看产品的微观、中观与宏观视角前面五大模块,我就同理心、机会判断、系统能力、用户体验和创新模式,把做一个产品五大块的思考框架介绍了一遍。有人问我,你怎么判断一个人是不是产品高手?怎么评估这个人厉害在哪里,不厉害在哪里?我把好产品体系用三个层次再总结一下,分别是:中观、微观、宏观。你可以对照看一下自己,或者你要评估的人,在这个三个层面水平...
2018-03-20 15:44:47
2567
1
原创 为什么需要操作系统
1 操作系统的作用对于一个程序而言,它为了保障自己的程序运行流畅,势必就会要求自己分配到的资源越多越好,但是计算机的资源总是有限的,大家都自顾自抢资源的话,要么就是大家一起跑不动,要么就是某几个程序把别的程序的资源都挤占掉。更麻烦的是,由于程序设计者不可能预测到自己的程序会和什么样的别的程序同时在一个电脑中运行,所以很有可能出现某个程序的临时数据恰好和另一个程序关键数据很相似的情况,于...
2018-03-13 10:57:39
12012
2
原创 Go语言版黑白棋(十一):机器落子
功能说明机器为白子。机器优先在4个角落落子,如果这4个位置不能吃子,则落在能吃子最多的位置。示例代码package mainimport ( "fmt" "os" "strconv" "unsafe" "github.com/mattn/go-gtk/gdk" "github.com/mattn/go-gtk/gdkpi.
2018-02-11 12:51:16
6296
原创 Go语言版黑白棋(十):棋子个数统计、胜负判断
功能说明增加棋子个数统计、胜负判断功能,游戏结束后可选择继续游戏。示例代码package mainimport ( "fmt" "os" "strconv" "unsafe" "github.com/mattn/go-gtk/gdk" "github.com/mattn/go-gtk/gdkpixbuf"
2018-02-11 12:46:31
2614
原创 Go语言版黑白棋(九):吃子
功能说明增加吃子规则算法。在一个空格新落下一个棋子,并且翻转对手一个或多个棋子,落子必须要吃子。原理说明示例代码package mainimport ( "fmt" "os" "strconv" "unsafe" "github.com/mattn/go-gtk/gdk" "github.com/matt.
2018-02-11 12:40:13
3530
原创 Go语言版黑白棋(八):倒计时
功能说明通过定时器实现倒计时功能,时间为20s,时间到后,如果没有落子,让对方下。示例代码package mainimport ( "fmt" "os" "strconv" "unsafe" "github.com/mattn/go-gtk/gdk" "github.com/mattn/go-gtk/gdkpixbuf&quo
2018-02-11 12:26:22
2183
原创 Go语言版黑白棋(七):初始化棋子、改变角色
功能说明启动程序时,棋盘默认有黑白棋各2枚,落子时,黑白子交替下(角色切换)原理说明示例代码package mainimport ( "fmt" "os" "unsafe" "github.com/mattn/go-gtk/gdk" "github.com/mattn/go-gtk/gdkpixbuf" "g.
2018-02-11 11:42:49
2825
原创 Go语言版黑白棋(六):落子
功能说明鼠标点击棋盘方格,落子。需要使用鼠标事件,棋子通过绘图事件画的。原理说明通过二维数组标志棋盘: 示例代码package mainimport ( "fmt" "os" "unsafe" "github.com/mattn/go-gtk/gdk" "github.com/mattn/go-gtk/gdkpixbu...
2018-02-11 00:39:26
3755
原创 Go语言版黑白棋(五):黑白子提示闪烁效果
功能说明通过定时器,实现黑白子提示闪烁效果。大致流程是这样,定时器每隔500毫秒产生一次信号,调用其处理函数,函数里做这样的事情,如果image原来是显示的,则隐藏,原来是隐藏的,则显示。示例代码package mainimport ( "fmt" "os" "unsafe" "github.com/mattn/go-gtk/gdk" "g...
2018-02-11 00:22:04
3568
原创 Go语言版黑白棋(四):界面其它设计
功能说明界面上增加3个标签,分别用于显示黑白子棋子个数,还有一个用于显示倒计时的时间。还增加2个图片控件,用于提示该谁落子(当前该黑子下,还是白子下)。glade界面设计示例代码package mainimport ( "fmt" "os" "unsafe" "github.com...
2018-02-11 00:16:13
4224
原创 Go语言版黑白棋(三):背景图、最小化、关闭窗口
功能说明设置一张背景图,增加2个按钮:最小化、关闭窗口。glade界面设计示例代码package mainimport ( "fmt" "os" "unsafe" "github.com/mattn/go-gtk/gdk" "github.com/mattn/go-gtk/gdkpixbuf" ".
2018-02-11 00:09:35
3218
原创 Go语言版黑白棋(二):无边框窗口实现
功能说明需要实现功能为,给窗口去表框,却可以通过鼠标实现移动。glade界面设计示例代码package mainimport ( "fmt" "os" "unsafe" "github.com/mattn/go-gtk/gdk" // "github.com/mattn/go-gtk/gdkpixbuf" "git.
2018-02-11 00:04:03
4166
1
原创 Go语言版黑白棋(一):游戏说明
1 界面参考图片资源下载:https://pan.baidu.com/s/1i6TyX5V2 游戏说明棋盘为8×8的方格布局,开局时在棋盘正中有摆好的四枚棋子,黑白各2枚,交叉放置,由执黑棋的一方先落子,双方交替下子,棋子落在方格内,一局游戏结束后双方更换执子颜色。合法的棋步包括:在一个空格新落下一个棋子,并且翻转对手一个或多个棋子,落子必须要吃子。下子方式:把自己颜色...
2018-02-10 23:54:54
5591
1
原创 Go版GTK:常用事件—大小改变事件
当窗口初始化,被移动或拉伸时,会触发大小改变事件。事件标识: 事件标识 触发条件 “configure_event” 窗口大小改变时触发示例代码:package mainimport ( "fmt" "os" "github.com/mattn/go-gtk/gtk")func main() { gtk...
2018-02-08 20:19:23
6071
原创 Go版GTK:常用事件—绘图事件
GTK界面只要有图片的地方,其底层实际上是通过绘图实现的。绘图实际上也是事件的一种,GTK中,绘图事件也叫曝光事件。绘图的操作需要放在事件回调函数里。1 绘图触发条件绘图时所触发的信号:expose-event。只要触发曝光事件信号”expose-event”,就会自动调用所连接的回调函数。这里需要注意的是,曝光事件信号 “expose-event” 默认的情况下,是自动触发的(当...
2018-02-08 17:04:59
9605
2
原创 Go版GTK:常用事件—键盘事件
事件标识: 事件标识 触发条件 “key-press-event” 键盘按下时触发 “key-release-event” 键盘抬起时触发示例代码:package mainimport ( "fmt" "os" "unsafe" "github.com/mattn/go-gtk/gdk" "g...
2018-02-08 11:40:22
7387
原创 Go版GTK:鼠标事件应用—窗口移动
创建窗口时,如果指定类型为弹出类型,即为无边框窗口,这时候,无法通过边框移动窗口,这时可以借助鼠标点击、移动事件实现窗口的移动。坐标说明: 移动坐标说明: 示例代码:package mainimport ( // "fmt" "os" "unsafe" "github.com/mattn/go-gtk/gdk" "github...
2018-02-07 20:57:03
7160
原创 Go版GTK:常用事件—鼠标事件
鼠标事件,可以理解为操作鼠标的动作。对于窗口而言,用户操作鼠标,窗口检测到鼠标的操作( 产生一个信号 ),然后去做相应处理( 调用其规定的回调函数 ),即为鼠标事件。窗口默认不捕获鼠标的操作,需要手动添加让其捕获: //添加鼠标按下事件 //BUTTON_PRESS_MASK: 鼠标按下,触发信号"button-press-event" //BUTTON_RELE...
2018-02-07 18:40:50
7695
标准模板库之map示例代码
2015-09-17
C语言排序实例(选择、冒泡、插入、折半、快速)
2015-09-04
ui 文件和 Qt 代码关系测试代码
2015-08-28
利用 Qt Creator 建立空白工程文件示例代码
2015-08-26
Qt快速入门(vim纯代码编写)测试代码
2015-08-26
进程同步与互斥:System V 信号量示例代码
2015-08-20
标准库 string 类的使用示例代码
2015-07-13
QWidget样式表设置背景示例代码
2015-06-26
标准模板库之vector示例代码
2015-06-25
C++入门学习——模板示例代码
2015-06-24
Qt4 项目迁移到 Qt5 问题测试代码
2015-06-18
有名信号量示例代码
2015-06-15
无名信号量示例代码
2015-06-15
互斥锁示例代码
2015-06-14
线程池示例代码
2015-06-14
线程同步与互斥:读写锁示例代码
2015-06-14
线程私有数据示例代码
2015-06-11
线程示例代码
2015-06-10
共享内存示例代码
2015-06-09
protobuf导入定义(import)
2017-06-30
protobuf枚举和包的使用
2017-06-29
repeated限定修饰符的使用
2017-06-29
protobuf常用序列化和反序列化API
2017-06-29
base64编码和解码
2017-06-23
使用HTTP协议实现通信
2016-12-28
C语言可变参数的使用
2016-12-22
C++单向链表的实现
2015-11-06
虚函数表介绍示例代码
2015-10-19
C++中explicit作用示例代码
2015-10-13
Linux多播组测试代码
2015-10-11
C++通过jsoncpp类库读写JSON文件示例代码
2015-09-29
线程基类的设计示例代码
2015-09-29
C++单例模式示例代码
2015-09-29
JsonCpp源码
2015-09-29
线程堆栈大小的使用介绍示例代码
2015-09-27
C++通过TinyXML类库读写XML文件示例代码
2015-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人