摘要:
本文同步发在: " http://cpper.info/2016/01/05/Two Points Of Oriented Object.html " 。 总览 在工作初期,我们可能会经常会有这样的感觉,自己的代码接口设计混乱、代码耦合较为严重、一个类的代码过多等等,自己回头看的时候都觉得汗颜。再看... 阅读全文
摘要:
在Linux系统下开发一个较大的项目,完全手动建立Makefile是一件费力而又容易出错的工作。autotools系列工具只需用户输入简单的目标文件、依赖文件、文件目录等就可以比较轻松地生成Makefile了。这极大地简化了Makefile的编写和维护,作者也是刚体验到其威力,所以将其过程记录下来。... 阅读全文
摘要:
C++在面向对象编程中,存在着静态绑定和动态绑定的定义,本节即是主要讲述这两点区分。我是在一个类的继承体系中分析的,因此下面所说的对象一般就是指一个类的实例。首先我们需要明确几个名词定义:静态类型:对象在声明时采用的类型,在编译期既已确定;动态类型:通常是指一个指针或引用目前所指对象的类型,是在运行... 阅读全文
摘要:
在C++学习使用过程中,每个人都不可避免地使用指针,而且都或多或少的接触过常量指针或指针常量,但是对这两个的概念还是很容易搞糊涂的。本文即是简单描述指针常量和常量指针的区别。常量指针 定义: 又叫常指针,可以理解为常量的指针,也即这个是指针,但指向的是个常量,这个常量是指针的值(地址)... 阅读全文
摘要:
本文对Windows及Linux平台下常用的计时函数进行总结,包括精度为秒、毫秒、微秒三种精度的各种函数。比如Window平台下特有的Windows API函数GetTickCount()、timeGetTime()、及QueryPerformanceCounter(),Linux平台下特有的get... 阅读全文
摘要:
Redis常用数据类型介绍、使用场景及其操作命令 阅读全文
摘要:
本文章也同时发表在个人博客 "Thrift在Windows及Linux平台下的安装和使用示例" 上。 thrift介绍 Apache Thrift 是 Facebook 实现的一种高效的、支持多种编程语言的RPC(远程服务调用)框架。 本文主要目的是分别介绍在Windows及Linux平台下的Thr 阅读全文
摘要:
本文章同时发在 "cpper.info" 。 1. websocket是什么Websocket是html5提出的一个协议规范,参考rfc6455。websocket约定了一个通信的规范,通过一个握手的机制,客户端(浏览器)和服务器(webserver)之间能建立一个类似tcp的连接,从而方便c-s之... 阅读全文
摘要:
本文介绍了设计模式中的五种创建型设计模式,分别是单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式,本文参考自GOF名著 阅读全文
摘要:
原文链接:http://www.ibm.com/developerworks/cn/linux/l-hisock.html使用 Sockets API,我们可以开发客户机和服务器应用程序,它们可以在本地网络上进行通信,也可以通过 Internet 在全球范围内进行通信。与其他 API 一样,您可以通... 阅读全文
摘要:
说明:无意看到一篇小短文,猜测作者应该是一个图形学领域的程序员或专家,介绍了在光线(射线)追踪程序中是如何优化C/C++代码的。倒也有一些参考意义,当然有的地方我并不赞同或者说我也不完全理解,原文在此,我的粗糙翻译如下:1. 牢记Ahmdal定律 funccost表... 阅读全文
摘要:
前段时间刚试用了一个序列化工具cereal,请看cereal:C++实现的开源序列化库,打算再总结下我对google proto buf序列化库的使用呢,结果还没动手,大Google又出了一个新的、开源、跨平台的序列化工具:FlatBuffers。那就索性先了解了解这个工具把。一. 什么是Googl... 阅读全文
摘要:
闲来无事发现了一个基于C++实现的序列化工具,相比于其他(比如Boost serialization或Google protobuf,恰巧都用过,以后再介绍),使用简单,感觉不错,下面做个摸索。cereal介绍cereal是一个开源的(BSD License)、轻量级的、支持C++11特性的、仅仅包... 阅读全文