2012年4月9日

摘要: ·概述: 学习PHP的目的是为了扩展服务器端开发能力。而且通过学习web端服务器开发也可以算是很好的学习。 感觉语言的学习都是这样的过程:基础知识、高级特性、标准库学习和扩展库的学习。而最好的学习方法是多动手多写代码啦。 基础知识有:注释和说明、变量和常量、类型系统、操作符系统、流程控制、文件读写、数组说明、字符串操作和正则表达式、函数系统、面向对象功能和错误异常控制。 最后谈谈对PH... 阅读全文
posted @ 2012-04-09 11:12 格物志 阅读(377) 评论(0) 推荐(0) 编辑

2012年4月5日

摘要: ·概述: 是在学习boost::asio的时候看到bind等新内容,感觉挺新奇的,就简单的学习了下。现在学习一本boost库的书,就在温故下。 其实bind等内容也不算是新的内容,STL库中也有相似的功能,不过都没用过--看来对标准库的学习还不彻底啊。 ·要点: result_of组件: 封装的是函数返回类型。 ref库: 简单的理解就是"智能引用"--可对照智能指针。 我... 阅读全文
posted @ 2012-04-05 12:00 格物志 阅读(129) 评论(0) 推荐(0) 编辑

2012年4月1日

摘要: ·概述: boost发展到现在的版本,包含的功能已经很多了。不过本着用到的学些,没用到的了解的学习方法,记录下需要学习的知识点。 ·要点: ·noncopyable: 原理就是将复制构造函数和赋值操作符私有化来阻止复制操作。 使用noncopyable的原因:统一使用而节省代码、noncopyable的名字就很好的传达出了不可拷贝的信息。 简单的应用中就可以自己实现的。 ·异常系... 阅读全文
posted @ 2012-04-01 14:33 格物志 阅读(222) 评论(0) 推荐(0) 编辑

2012年3月31日

摘要: ·概述: 主要是两个库:smart_ptr库和pool库。 smart_ptr库主要解决的问题是指针的内存泄漏和垃圾回收问题;pool则是解决内存分配问题。 感觉还是smart_ptr库比较好用一些,而其中的shared_ptr数据最常用和最好用的技巧。 ·要点: smart_ptr库: 由技巧提升为技术的。主要成员scoped_ptr/scoped_array,shared_pt... 阅读全文
posted @ 2012-03-31 14:02 格物志 阅读(378) 评论(0) 推荐(0) 编辑

2012年3月30日

摘要: 概述: 这是《Boost程序库完全开发指南》书中第一个介绍的库。将书中的代码实践了一遍,但感觉没想象中的那么好--可能是我的期望太高了吧。不过还是将学习的收获和感受记录下来。 学习: ·timer库: 就是一个使用了C函数clock()的简单的计时器,可以参照源代码实现自己的计时器。而且在实践例子出现问题,就是linux平台上clock()函数计算的是cpu的时间,而使用sleep()和... 阅读全文
posted @ 2012-03-30 18:39 格物志 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 说明: linux下编程在不实用IDE的情况下,基本的工具有vim+gcc+gdb。不过个人感觉很原始。不过高手们都说这样才能显得高端么。 其中make工具可以实现一定的自动化。联想到linux下安装软件的时候,过程为:执行./config之类的配置文件,make编译文件,make install安装文件和使用make clean来清理安装中的垃圾。两个都使用的make工具。 模版: #这... 阅读全文
posted @ 2012-03-30 11:31 格物志 阅读(701) 评论(0) 推荐(0) 编辑

2012年3月28日

摘要: 说明: 可能是用windows时间长的关系,总感觉linux下的软件管理很麻烦。 特意说明下:这里的方法非原创,都是在安装过程中遇到问题在搜索之后的整理。作为一种经验整理。·安装: 依赖库:基本:--应该是最小集,但我安装这些后还是缺少库。 libboost-dev,libevent-dev,libtool,flex,bison,g++,automake,pkg-config, libboost-test-dev libmono-dev,ruby1.8-dev,libcommons-lang-java,php5-dev全部: debhelper(>=5),build-essen 阅读全文
posted @ 2012-03-28 13:54 格物志 阅读(5769) 评论(0) 推荐(0) 编辑

2012年3月14日

摘要: 前言: 现在写代码,很多时候都是借鉴的别人的代码。而大家的代码风格都不同,很多时候我也会造成自己没有固定的代码风格。从网上找了这个《Google C++ 编码规范》,希望整理出自己的编码风格。 ·头文件 1.#define的保护:使用#ifndef <PROJECT>_<PATH>_<FILE>_H_,#define和#endif。 2.头文件依赖:为了减少引入更多头文件,可多使用前置声... 阅读全文
posted @ 2012-03-14 14:34 格物志 阅读(2137) 评论(0) 推荐(1) 编辑

2012年3月12日

摘要: 一.简介 定义:Thrift是facebook开发出的一个软件库和一组代码生成工具,以加快高效率、可扩展的后端服务的开发与实现的速度。 使用:先在一个单独的语言无关的文件中定义数据类型和服务接口,再用生成器生成代码,最后可以根据需要添加和修改生成代码(可能用到Thrift的库)。 特色:多语言支持、库和代码生成器带来的高效率。二.基础组件 包括:类型、传输、协议、版本化和处理器2.类型 2.1.基本类型:bool,byte,i16,i32,i64,double,string 2.2.结构体:使用关键字struct定义 2.3.容器:list<type>,set<type> 阅读全文
posted @ 2012-03-12 10:53 格物志 阅读(1228) 评论(0) 推荐(0) 编辑

2011年11月9日

摘要: 除了标准库提供的智能指针std::auto_ptr外,boost中存在六个智能指针:scoped_ptr,shared_ptr,intrusive_ptr,weak_ptr和scoped_array,shared_array。 相比于std::auto_ptr不能用作STL容器的元素,Boost的智能指针则填补了这个空白。--何时需要智能指针a).资源的共享所有权中:两个或多个对象必须同时使用第三个对象的情况。b).编写异常安全的代码时:在异常抛出时没有资源泄漏,并保证程序状态的一致性。c).避免常见错误,例如资源泄漏时:比如忘记调用delete函数,或没有正确调用delete[]等。--.. 阅读全文
posted @ 2011-11-09 18:18 格物志 阅读(389) 评论(0) 推荐(0) 编辑

导航