[置顶] C++11新特性学习

01、类型推导 02、初始化 03、基于范围的for循环、静态断言 04、noexcept修饰符、nullptr、原生字符串字面值 05、强类型枚举 06、常量表达式 07、用户定义字面量 08、强类型枚举 09、类的改进 10、defaulted 和 deleted 函数...
阅读(425) 评论(0)

[置顶] protobuf入门教程

1、简介和安装2、消息类型3、proto3 与 proto2 的区别4、常用序列化/反序列化接口5、repeated限定修饰符6、枚举(enum)、包(package)7、导入定义(import)...
阅读(288) 评论(0)

[置顶] 为什么你要写博客?

我知道现在可能说这话有点不合时宜,毕竟博客时代都已经过去了,再号召大家用过就好像时的东西是不是有点逆流而上? 我曾经也问过自己这个问题,但是我觉得,博客时代过去跟我们要开博客是没有多大关系的,就好像你的读书时代已经过去你就不再读书一样。 判断一件事情值不值得去做有一个方法:在一张白纸的左边写不值得做的原因,然后在右边写值得做的原因,写完一比较,一权衡,自然能够得出结果。 大家都成年人了,你会觉得这样思考分析总结的过程才是正确的思考的方法吧? 所以,我在这里列出要写(独立)博客的原因,供大家去选择,然后填在你...
阅读(1531) 评论(4)

[置顶] 一步步学习Linux多任务编程

01、什么是系统调用? 02、Linux系统调用之I/O操作(文件操作) 03、文件描述符的复制:dup(), dup2() 04、进程的介绍 05、Linux可执行文件结构与进程结构 06、多进程实现多任务(一):fork() 07、多进程实现多任务(二):vfork() 08、进程的控制:结束进程、等待进程结束 09、Linux特殊进程之僵尸进程 10、Linux特殊进程之孤儿进程 11、Linux特殊进程之守护进程 12、进程替换:exec函数族...
阅读(6803) 评论(5)

[置顶] Linux高级网络开发奇妙之旅

01、Linux网络编程1——网络协议入门 02、Linux网络编程2——无连接和面向连接协议的区别 03、Linux网络编程3——编程准备:字节序、地址转换 04、Linux网络编程4——套接字的介绍 05、Linux网络编程5——C/S和B/S架构的区别 06、Linux网络编程6——UDP编程 07、Linux网络编程7——广播...
阅读(3765) 评论(9)

[置顶] 一步步学习Linux开发环境搭建与使用

00、Linux开发环境搭建与使用1——Linux简史 01、Linux开发环境搭建与使用2——Linux系统( ubuntu )安装方案 02、Linux开发环境搭建与使用3——通过虚拟机安装系统( ubuntu ) 03、Linux开发环境搭建与使用4——ubuntu更新设置 04、Linux开发环境搭建与使用4——Linux必备软件之Samba 05、Lin...
阅读(3115) 评论(5)

[置顶] C语言也能做界面:踏上GTK+学习之旅

00、背上行囊1——程序员学习之道 01、背上行囊2——GUI概述 02、背上行囊3——GTK简介 03、背上行囊4——GTK环境搭建( Linux ) 04、背上行囊5——GTK环境搭建( windows ) 05、踏上旅途1——一个简单的空白窗口 06、踏上旅途2——控件的添加 04、踏上旅途1——一个简单的空白窗口 05、踏上旅途2——控件的添加 06、踏上旅途3——布局容器之水平布局 07、踏上旅途4——布局容器之垂直布局 08、踏上旅途5——布局容器之表格布...
阅读(2681) 评论(3)

阻塞、非阻塞IO

阻塞与非阻塞是对于文件而言的,而不是指read、write等的属性。阻塞IO应用程序调用IO函数,导致应用程序阻塞,等待数据准备好。如果数据没有准备好,一直等待数据准备好了,从内核拷贝到用户空间,IO函数返回成功指示。读常规文件是不会阻塞的,不管读多少字节,read一定会在有限的时间内返回。一般网络、终端设备IO都是阻塞I/O。如果从终端输入的数据没有换行符,调用read读终端设备就会阻塞,如果网络...
阅读(42) 评论(0)

vim-csupport

简介如果你还在为编写 c/cpp 过程中添加注释而烦恼的话,那么 vim 插件 csupport 就将会是你的好朋友了。csupport 除了提供快捷键添加注释块以外,还能够快速插入定义函数、预处理、当前日期等。安装和配置官网:http://www.vim.org/scripts/script.php?script_id=213 下载页面:https://github.com/WolfgangMe...
阅读(52) 评论(0)

Go基础编程:复合类型—数组

概述数组是指一系列同一类型数据的集合。数组中包含的每个数据被称为数组元素(element),一个数组包含的元素个数被称为数组的长度。数组⻓度必须是常量,且是类型的组成部分。 [2]int 和 [3]int 是不同类型。 var n int = 10 var a [n]int //err, non-constant array bound n var b [10]int //o...
阅读(72) 评论(0)

Go基础编程:复合类型—指针

指针是一个代表着某个内存地址的值。这个内存地址往往是在内存中存储的另一个变量的值的起始位置。Go语言对指针的支持介于Java语言和C/C++语言之间,它既没有想Java语言那样取消了代码对指针的直接操作的能力,也避免了C/C++语言中由于对指针的滥用而造成的安全和可靠性问题。基本操作Go语言虽然保留了指针,但与其它编程语言不同的是: 默认值 nil,没有 NULL 常量 操作符 “&” 取变量地址,...
阅读(57) 评论(0)

Go基础编程:工程管理

概述在实际的开发工作中,直接调用编译器进行编译和链接的场景是少而又少,因为在工程中不 会简单到只有一个源代码文件,且源文件之间会有相互的依赖关系。如果这样一个文件一个文件逐步编译,那不亚于一场灾难。 Go语言的设计者作为行业老将,自然不会忽略这一点。早期Go语言使用makefile作为临时方案,到了Go 1发布时引入了强大无比的Go命令行工具。Go命令行工具的革命性之处在于彻底消除了工程文件的概念...
阅读(49) 评论(0)

Go基础编程:包

所有 Go 语言的程序都会组织成若干组文件,每组文件被称为一个包。这样每个包的代码都可以作为很小的复用单元,被其他项目引用。一个包的源代码保存在一个或多个以.go为文件后缀名的源文件中,通常一个包所在目录路径的后缀是包的导入路径。自定义包对于一个较大的应用程序,我们应该将它的功能性分隔成逻辑的单元,分别在不同的包里实现。我们创建的的自定义包最好放在GOPATH的src目录下(或者GOPATH src...
阅读(59) 评论(0)

Go基础编程:工作区

工作区介绍Go代码必须放在工作区中。工作区其实就是一个对应于特定工程的目录,它应包含3个子目录:src目录、pkg目录和bin目录。 src目录:用于以代码包的形式组织并保存Go源码文件。(比如:.go .c .h .s等) pkg目录:用于存放经由go install命令构建安装后的代码包(包含Go库源码文件)的“.a”归档文件。 bin目录:与pkg目录类似,在通过go install命令完成安...
阅读(32) 评论(0)

Go基础编程:作用域

作用域为已声明标识符所表示的常量、类型、变量、函数或包在源代码中的作用范围。局部变量在函数体内声明的变量、参数和返回值变量就是局部变量,它们的作用域只在函数体内:func test(a, b int) { var c int a, b, c = 1, 2, 3 fmt.Printf("a = %d, b = %d, c = %d\n", a, b, c) }func main...
阅读(43) 评论(0)

Redis与数据库数据同步解决方案

本文转自:http://3gods.com/2016/06/23/Redis-Sync-DB.html 部分图片来自:http://blog.csdn.net/stubborn_cow/article/details/50586990数据库同步到Redis我们大多倾向于使用这种方式,也就是将数据库中的变化同步到Redis,这种更加可靠。Redis在这里只是做缓存。方案1做缓存,就要遵循缓存的语义规...
阅读(206) 评论(0)

分布式架构的演进

著作权归作者所有。 商业转载请联系作者获得授权,非商业转载请注明出处。 作者:李小翀 链接:http://www.zhihu.com/question/22764869/answer/31277656 来源:知乎初始阶段架构初始阶段 的小型系统 应用程序、数据库、文件等所有的资源都在一台服务器上通俗称为LAMP。何为LAMP,请点击此链接。特征: 应用程序、数据库、文件等所有的资源都在一台...
阅读(124) 评论(0)

Go基础编程:递归函数、函数类型、匿名函数与闭包

1. 递归函数递归指函数可以直接或间接的调用自身。递归函数通常有相同的结构:一个跳出条件和一个递归体。所谓跳出条件就是根据传入的参数判断是否需要停止递归,而递归体则是函数自身所做的一些处理。//通过循环实现1+2+3……+100 func Test01() int { i := 1 sum := 0 for i = 1; i <= 100; i++ { sum...
阅读(135) 评论(0)

Go基础编程:自定义函数

定义格式函数构成代码执行的逻辑结构。在Go语言中,函数的基本组成为:关键字func、函数名、参数列表、返回值、函数体和返回语句。Go 语言函数定义格式如下:func FuncName(/*参数列表*/) (o1 type1, o2 type2/*返回类型*/) { //函数体 return v1, v2 //返回多个值 }函数定义说明: func:函数由关键字 func 开始声明 Fu...
阅读(106) 评论(0)

Go基础编程:流程控制

Go语言支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构。 顺序结构:程序按顺序执行,不发生跳转。 选择结构:依据是否满足条件,有选择的执行相应功能。 循环结构:依据条件是否满足,循环多次执行某段代码。 选择结构if语句if var a int = 3 if a == 3 { //条件表达式没有括号 fmt.Println("a==3") } /...
阅读(78) 评论(0)

Go基础编程:运算符

算术运算符 运算符 术语 示例 结果 + 加 10 + 5 15 - 减 10 - 5 5 * 乘 10 * 5 50 / 除 10 / 5 2 % 取模(取余) 10 % 3 1 ++ 后自增,没有前自增 a=0; a++ a=1 – 后自减,没有前自减 a=2; a– a...
阅读(126) 评论(0)

Go基础编程:格式化输出、类型转换、类型别名

使用fmt包来格式化字符串fmt.Printf()格式字符串: 打印格式 含义 %% 一个%字面量 %b 一个二进制整数值(基数为2),或者是一个(高级的)用科学计数法表示的指数为2的浮点数 %c 字符型。可以把输入的数字按照ASCII码相应转换为对应的字符 %d 一个十进制数值(基数为10) %e 以科学记数法e表示的浮点数或者复数值 %E 以...
阅读(122) 评论(0)

Go基础编程:基础数据类型

分类Go语言内置以下这些基础类型: 类型 名称 长度 零值 说明 bool 布尔类型 1 false 其值不为真即为家,不可以用数字代表true或false byte 字节型 1 0 uint8别名 rune 字符类型 4 0 专用于存储unicode编码,等价于uint32 int, uint 整型 4或8...
阅读(136) 评论(0)

Go基础编程:命名、变量、常量

命名Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则:一个名字必须以一个字母(Unicode字母)或下划线开头,后面可以跟任意数量的字母、数字或下划线。大写字母和小写字母是不同的:heapSort和Heapsort是两个不同的名字。Go语言中类似if和switch的关键字有25个(均为小写)。关键字不能用于自定义名字,只能在特定语法结构中使用。 此外...
阅读(121) 评论(0)

Go基础编程:第一个Go程序

Hello Go// hello.go package mainimport ( "fmt" )func main() { fmt.Println("Hello Go!") }代码分析每个Go源代码文件的开头都是一个package声明,表示该Go代码所属的包。包是Go语言里最基本的分发单位,也是工程管理中依赖关系的体现。要生成Go可执行程序,必须建立一个名字为main的包,并且在该包...
阅读(103) 评论(0)

Go基础编程:环境搭建

安装和设置 Go环境搭建:ubuntu+sublime3 Go环境搭建:ubuntu+liteide Go环境搭建:windows+sublime3 Go环境搭建:windows+liteide 标准命令概述Go语言中包含了大量用于处理Go语言代码的命令和工具。其中,go命令就是最常用的一个,它有许多子命令。这些子命令都拥有不同的功能,如下所示。 build:用于编译给定的代码包或Go语言源码文件及...
阅读(123) 评论(0)

Go基础编程:Go语言介绍

本文转自:https://www.zhihu.com/question/21409296Go语言是什么2009年11月10日,Go语言正式成为开源编程语言家庭的一员。Go语言(或称Golang)是云计算时代的C语言。Go语言的诞生是为了让程序员有更高的生产效率,Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。开发人员在...
阅读(126) 评论(0)
323条 共17页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:568881次
    • 积分:9853
    • 等级:
    • 排名:第1974名
    • 原创:247篇
    • 转载:67篇
    • 译文:9篇
    • 评论:269条
    相关声明
    博客专栏
    最新评论