自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一直被超越,从未被模仿

Craft Life, Don't let life Craft you.

  • 博客(43)
  • 资源 (6)
  • 收藏
  • 关注

原创 Qt Remote Objects (QtRO) 笔记

Qt Remote Objects (QtRO) 是 Qt 的一个进程间通信模块。

2024-04-02 08:32:51 547

原创 《Python基础教程》笔记​

# 文档字符串def语句后面、模块或者类的开头```pythonsquare.__doc__ # 输出 'Calculates ... '# 非位置参数(与位置无关),调用函数时,指明参数名# 参数默认值pass# *收集参数到元组func(1, 2, 3) # 输出(1, 2, 3)# **收集关键字参数到字典# 在调用函数时使用 * ** 将元组或字典解包成参数vars() 返回当前作用域字典globals() 返回全局作用域字典locals()

2023-12-14 14:19:54 910

原创 《Head First Go》 笔记

http://www.zhouyuanchao.com/index.php/archives/187/Hello Worldpackage mainimport "fmt"func main() { fmt.Println("Hello, World!")}典型的Go文件布局:package子句任何import语句实际代码每个Go文件都必须以package子句开头。每个Go文件都必须导入它引用的每个包。Go文件必须只导入它们引用的包。Go查找名为main的函数并首先运

2022-04-16 22:01:10 909

原创 编译Linux内核源码的过程中发生的故事

来自http://www.zhouyuanchao.com/index.php/archives/70/目的构建环境,学习 《Linux设备驱动程序》 《Linux内核设计与实现》Linux环境Fedora 24,内核版本4.5.5。Linux 4.5.5-300.fc24.x86_64下载内核源码从https://www.kernel.org下载了4.19.128版本。内核配置使用make help查看所有make选项。可以使用不同的方法进行配置,比如make config、make

2020-06-24 19:42:40 394 1

原创 Boost.Asio 笔记

《Boost.Asio C++ Network Programming》libtorrent使用了Boost.Asio支持 network com serial ports files实现同步/异步输入输出 read(stream, buffer) async_read(stream, buffer) write(stream, buffer) async_write(stream,

2017-06-23 01:19:30 799 2

转载 OpenCascade与三角剖分 笔记

笔记摘自 http://www.cppblog.com/eryar/archive/2013/05/26/200605.html概述三角剖分是平面剖分中的一个重要课题,在数字图像处理、计算机三维曲面造型、有限元计算、逆向工程等领域有着广泛应用。由于三角形是平面域中的单纯形,与其他平面图形相比,其有描述方便、处理简单等特性,很适合于对复杂区域进行简化处理。因此,无论在计算几何、计算机图形处理、模式识别

2017-01-18 22:45:25 9211 5

原创 海伦公式

来自 http://baike.baidu.com/view/1279.htm简介已知三角形三条边的长度,求三角形的面积。海伦公式假设在平面内,有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:而公式里的p为半周长(周长的一半):

2017-01-18 12:20:27 5325

原创 Base64 笔记

来自维基百科简介Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符。三个字节有24个比特,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示。它可用来作为电子邮件的传输编码。在Base64中的可打印字符包括字母A-Z、a-z、数字0-9,这样共有62个字符,此外两个可打印符号在不同的系统中而不同。一些如

2016-12-22 19:53:19 636

原创 MySQL 笔记

数据库设计概论数据表类型MyISAM 成熟稳定易于管理InnoDB 是MyISAM的一种更新换代产品 支持事务HEAP 内存数据库,数据库服务停止运行,数据丢失数据库文件存放位置默认: Linux /var/lib/mysql Windows c:\Programs\MySQL\MySQL Server n.n\data每个数据表有一个.frm定义文件,位于数据库名字文件夹中

2016-12-22 19:40:15 546

转载 Objective-C 入门教程

来自 http://www.runoob.com/w3cnote/objective-c-tutorial.htmlObjective-C 是一种简单的计算机语言,设计为可以支持真正的面向对象编程。Objective-C 通过提供类定义,方法以及属性的语法,还有其他可以提高类的动态扩展能力的结构等,扩展了标准的 ANSI C 语言。类的语法和设计主要是基于 Smalltalk,最早的面向对象编程语言

2016-12-13 12:54:14 4375 3

原创 D-Bus学习

简介D-Bus是一种Linux下常用的进程通信技术。参考和菜鸟一起学linux之DBUS基础学习记录 D-Bus Tutorial

2016-12-07 23:41:28 580

原创 关于“RESTful API”

在《第一本Docker书》中接触到了“RESTful API”。简介Github API就属于RESTful风格的API。RESTful架构,是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。网络应用程序,分为前端和后端两个部分。当前的发展趋势,就是前端设备层出不穷(手机、平板、桌面电脑、其他专用设备……)。因此,必须有一种统一的机制,方便不同

2016-11-17 21:37:33 478

转载 Node.js 之 cli-color

来自 https://www.npmjs.com/package/cli-color简介 Colors, formatting and other tools for the console改变控制台输出文本的颜色、文本格式化。安装如果安装速度慢可以使用npm淘宝镜像。$ npm install cli-color使用var clc = require('cli-color');// 输出红色

2016-11-12 01:33:57 1872

原创 Linux 笔记

关机exit 注销当前用户reboot 重启shutdown -r now 重启halt 关机shutdown -h now 关机shutdown -h 10 10分钟后关机时间date 查看系统时间date 06041400 修改时间为6月4日14时 MMDDhhmmYYYY 月日时分[年]cal 显示日历文件、目录pwd 当前目录绝对路

2016-11-05 23:54:37 688

原创 《Django Web开发指南》 笔记

Django Python实战Django提供了一个高级的框架,用它只需要很少的几行代码就能完成一个Web应用。Django中容易犯的和元组相关的错误:>>> b = ("just-one")>>> b[0]'j'>>> d = "just-one",>>> d[0]'just-one'元组是由逗号决定的,而不是小括号。装饰器Python的装饰器指的是一种让你能改变或者说“装饰”函数行为的机

2016-10-28 20:49:23 29024 1

翻译 PIL (Python Imaging Library) 教程

来自 http://effbot.org/imagingbook/introduction.htm简介PIL (Python Imaging Library)Python图像处理库,该库支持多种文件格式,提供强大的图像处理功能。使用Image类PIL中最重要的类是Image类,该类在Image模块中定义。从文件加载图像:import Imageim = Image.open("lena.ppm")

2016-10-18 20:02:18 31647

转载 ECMAScript(JavaScript) 定义类或对象

来自 http://www.w3school.com.cn/js/pro_js_object_defining.asp使用预定义对象只是面向对象语言的能力的一部分,它真正强大之处在于能够创建自己专用的类和对象。 ECMAScript 拥有很多创建对象或类的方法。原始方式因为对象的属性可以在对象创建后动态定义,所有许多开发者都在 JavaScript 最初引入时编写类似下面的代码:var oCar

2016-09-28 13:23:30 360

原创 Qt 实用技巧

不规则窗口,透明半透明窗口设置窗口属性setWindowFlags(windowFlags() | Qt::FramelessWindowHint);setAttribute(Qt::WA_TranslucentBackground);绘制带alpha通道的图片// paintEvent()函数中QPainter painter(this);QImage bg("background.png"

2016-09-24 23:30:08 2713 3

转载 Docker 简介

VM(比如VirtualBox、VMware)的理念是在宿主的系统之上,自己虚拟了一个硬件平台,然后运行一个不同的 OS。这意味着它要求很多的资源,在一台机器上,你最多就跑几个虚拟机吧。 而 docker 是依托于宿主机提供的内核,仅仅把一个不同的 linux 发行版本所需的特性打包成一个 image, 这样子当你运行一个 ubuntu 镜像,你会感觉就是在一个 ubuntu 的操作环境里

2016-09-24 13:10:58 598

原创 Boost String Algorithms Library

来自Boost帮助文档简介Boost字符串算法库提供了很多操作字符串的算法:大小写转换、去掉字符串首尾空白字符或指定字符、查找、替换、分割等等。使用方法#include using namespace std;using namespace boost;// ...string str1(" hello world! ");to_upper(str1); // st

2016-09-18 23:21:54 1409

原创 Boost.Any

Examples#include #include using boost::any_cast;typedef std::list many;void append_int(many & values, int value){ boost::any to_append = value; values.push_back(to_append);}void ap

2016-09-18 12:42:00 472

翻译 Electron 快速入门

转自 http://electron.atom.io/docs/tutorial/quick-start/Electron允许你使用JavaScript及丰富的系统级API创建桌面应用程序。你可以把Electron看做一个Node.js运行时的变体,专注于桌面应用程序,而Node.js专注于Web服务器。Electron并不是一个用JavaScript写的GUI库,而是Electron使用网页作为G

2016-09-12 01:10:04 2290

原创 《Go语言编程》 笔记

初识Go语言Go语言的主要特性自动垃圾回收更丰富的内置类型 数组、字符串、map等函数多返回值错误处理匿名函数和闭包类型和接口并发编程反射语言交互性Hello, World!package mainimport "fmt"func main() { fmt.Println("Hello, world!")}导入没有用到的包会编译错误函数:func

2016-09-08 23:47:22 837

原创 Electron: HTML + Javascript 开发桌面应用程序

无意间接触到了Electron,引出了对相关技术的整理简介通过HTML、CSS、Javascript来编写本地应用程序。简单地说就是一个本地客户端应用程序使用一个内置的浏览器内核渲染前端界面,另一方面还可以调用本地系统级API,实现本地应用程序的各种功能。使用该技术的部分产品:网易云音乐PC客户端有道词典PC客户端 (基于heX)Atom文本编辑器 (基于Electron)Visual S

2016-09-04 12:45:39 24568

原创 Hadoop 笔记

初识HadoopMapReduce 和 关系型数据库Hadoop为我们提供了一个可靠的共享存储和分析系统 HDFS实现数据的存储 MapReduce实现数据的分析和处理如果数据库系统只更新一小部分记录,那么B树更有优势(关系型数据库中使用的一种数据结构,受限于寻址的比例)但数据库系统如果有大量数据更新时,B树的效率就明显落后于MapReduc

2016-09-03 22:42:48 398

原创 fedora Linux 配置阿里云开源镜像站

在使用dnf命令安装软件时,有时会遇到下载速度非常慢的情况,解决方法就是使用国内的开源镜像站。阿里云开源镜像站 http://mirrors.aliyun.com/本文来自 http://mirrors.aliyun.com/help/fedora阿里云开源镜像站的使用1、备份mv /etc/yum.repos.d/fedora.repo /etc/yum.repos.d/fedora.repo.b

2016-09-02 21:15:10 9087

原创 《GTK+/GNOME程序设计》 笔记

GTK+简介GTK 最初为GIMP(一个图像处理软件,类似Photoshop)的工具包 后来GTK重写为面向对象的GTK+GTK+ 并非是用C++写的,而是用C语言,所谓的面向对象是用C语言模拟的。强大 GTK+ 2.0 新特性: 使用Pango(a theme engine)增强了文本渲染 improved accessibility using th

2016-08-31 23:07:20 6367 1

转载 Python 3.x 中"HTTP Error 403: Forbidden"问题的解决方案

转载自 http://www.2cto.com/kf/201309/242273.html问题:urllib.request.urlopen() 方法经常会被用来打开一个网页的源代码,然后会去分析这个页面源代码,但是对于有的网站使用这种方法时会抛出"HTTP Error 403: Forbidden"异常。例如: 执行下面的语句时 urllib.request.ur

2016-08-30 12:38:35 4876

原创 《程序员的呐喊》 读后感

本书的作者是业界知名的程序员、来自Google的Steve Yegge。他写过很多颇有争议的文章,其中有不少就收录在这本书中。本书是他的精彩文章合集。 作者曾就职于亚马逊、Google等公司。在知乎的一篇帖子里无意中发现的这本书的一页截图,感觉蛮有意思,便一口气读完了。 https://www.zhihu.com/question/35007873书中作者无情地吐槽了不少编程语言,包括

2016-08-29 23:52:53 561

原创 libcurl 笔记

来自https://curl.haxx.se/libcurl/c/libcurl-tutorial.html初始化参数指定要初始化的模块curl_global_init(CURL_GLOBAL_ALL);CURL_GLOBAL_WIN32CURL_GLOBAL_SSL当不再使用libcurl时调用:curl_global_cleanup();查询libcurl支持的特性curl_versio

2016-08-29 23:13:40 811

原创 《C++ GUI Qt 4 编程》 笔记(七)

博客搬家自http://zhouyuanchao.com/wordpress/archives/81第21章 创建插件动态链接库LIBS += -ldb_cxxINCLUDEPATH += /usr/local/BerkeleyDb.4.2/includeQLibrary 动态加载dll插件常见的插件类型:数据库驱动程序、图像格式、风格

2016-08-29 12:43:11 1312

原创 《C++ GUI Qt 4 编程》 笔记(六)

博客搬家自http://zhouyuanchao.com/wordpress/archives/77第17章 提供在线帮助工具提示C++1234findButton->setToolTip(tr("Find next"));newAction = new

2016-08-29 12:42:00 1229

原创 《C++ GUI Qt 4 编程》 笔记(五)

博客搬家自http://zhouyuanchao.com/wordpress/archives/74第15章 网络QFtpQHttpQTcpSocket QSslSocketQUdpSocket使用QCoreApplication而不是QApplication以避免连接到QtGui库QUrl类提供了一个高级接口,用来提取URL的不同部分

2016-08-29 12:40:51 1907

原创 《C++ GUI Qt 4 编程》 笔记(四)

博客搬家自http://zhouyuanchao.com/wordpress/archives/71第12章 输入与输出QIODevice 基类QFileQTemporaryFile 临时文件QBuffer 从QByteArray中读取或写入数据QProcess 运行外部程序并处理进程间通信QTcpSocketQUdpSocketQSs

2016-08-29 12:38:44 1187

原创 《C++ GUI Qt 4 编程》 笔记(三)

博客搬家自http://zhouyuanchao.com/wordpress/archives/69第10章 项视图类MVC模型代表数据集,它对需要查看数据的获取以及任何存储的改变负责。每种类型的数据集都有自己的模型,但不管底层的数据集是什么样子,模型提供给视图的API都是相同的。视图代表的是面向用户的那些数据。控制器是用户和视图之间的媒介,它把用户的

2016-08-28 01:49:26 1187

原创 《C++ GUI Qt 4 编程》 笔记(二)

博客搬家自http://zhouyuanchao.com/wordpress/archives/66第二部分 Qt中级第6章 布局管理分组布局QStackedLayout 对一组子窗口部件进行摆放,或对它们进行分页。QStackedWidget 内置QStackedLayout的QWidget

2016-08-28 01:46:57 1865

原创 《C++ GUI Qt 4 编程》 笔记(一)

博客搬家自http://zhouyuanchao.com/wordpress/archives/62第一部分 Qt基础#include #include int main(int argc, char* argv[]){ QApplication app(argc, argv); QLabel* label = new QLabel("Hello Qt!");

2016-08-26 22:41:41 9177

原创 SDL(Simple DirectMedia Layer)

博客搬家自http://zhouyuanchao.com/wordpress/archives/51SDL简介(wiki)www.libsdl.orgSDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、W

2016-08-26 22:14:57 3855

原创 《游戏引擎架构》 笔记(二) 动画系统

博客搬家自http://zhouyuanchao.com/wordpress/archives/44每顶点动画技术:存储随时间改变的顶点位置和法线变形目标动画: 移动网格顶点,仅制作相对少量的固定极端姿势,然后运行时混合姿势,线性差值(LERP),常用于面部动画。蒙皮动画游戏引擎会限制每个顶点能绑定的关节数目,典型的限制为每顶点4个关节。原因如下:首先,4个8位

2016-08-26 00:09:57 1777

原创 《游戏引擎架构》 笔记(一)

博客搬家自http://zhouyuanchao.com/wordpress/archives/41游戏团队:工程师、艺术家、游戏设计师、制作人平台游戏(platformer)是指基于人物角色的第三人称游戏。主要的游戏机制是在平台之间跳跃。第三人称游戏比较看重主角的能力及运动模式。需要逼真的全身动画。复杂的摄像机碰撞系统,以保证视点不会穿过背

2016-08-26 00:05:18 4646

Boost.Asio C++ Network Programming

Boost.Asio C++ Network Programming.pdf 讲述Boost::Asio,英文版

2016-01-15

ACE 6.2 开源框架

用于网络编程的开源框架。 The Adaptive Communication Environment (often referred to as ACE) is an open-source framework used for network programming. It provides a set of object-oriented C++ classes designed to help address the inherent complexities and challenges in network programming by preventing common errors.

2016-01-15

空空如也

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

TA关注的人

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