年初的时候定下计划 2015 年一年至少阅读 20 本书,不管是小说还是专业书,现在离 2015 结束只有短短几天时间了,就梳理一下看过的书好了,顺带检查一下是否完成了任务。可惜结果很令我伤心。满心以为今年能读 20 本书,最后满打满算也只算读了 16 本书。今年欠了 4 本的债,明年 2016 年期望自己能够看下 24 本书吧。
小说
火星救援
看完电影之后还是不过瘾,于是乎补完小说。小说比电影更加精彩,电影因为时长的原因做了很多删减和改编,看小说更能体会到那种在绝境中想要生存下去的力量。
小说摘录
地球土壤中存在着几十种不同类型的细菌
Read more ...
很久没有看到这样反正真实中国的电影了,近两年的国产电影不是被早恋打胎的青春片,就是被各种古怪离奇的古装片,在就是无厘头的喜剧片所霸占。幸而有这样一部电影能够让2015年的国产电影画上一个稍稍圆满的句号。
剧情上,这样一部电影融入了太多真实的新闻,以至于会让人一一和某某事件联系上,人们往往说,电影往往是现实的表现。而这样一部老炮儿正是在真实这件事情上花了太多的功夫。从老北京的腔调到巷口胡同,从酒吧夜宿到马路飙车,从故友借钱到朋友援手,一件一件的小事敲打着人们的心,虽然故事发生在北京,虽然故事的主人公有着特殊的经历,可正是从这样的角度让我们看到了现代人们的
Read more ...
观影风向标做了一期引进片的排名,我顺便也简单地回忆了一下。然后根据2015年引进片豆列,找出了10部我非常喜欢的引进片。
就像观影风向标中所说,每个人都有一个自己的排名,没有最终的标准答案,每个人都有自己的喜好,不需要迁就谁,喜欢就好。
王牌特工:特工学院
当之无愧的年度最佳—-王牌特工:特工学院 2015-04-19,记得这部电影上映的时候并不是很了解,只是之后听了节目并看到一些影评觉得非常值得一看,在最后快下线的时候找了很远的一家影院看了。虽然当时同去的朋友对最后脑袋放烟花的镜头颇有微词,但是依然不减这部电影的魅力,我最喜欢的几大类电影中特工片一
Read more ...
对应书中第三章 内存管理,着重讲 boost 实现的智能指针,和内存池pool 等概念。众所周知,C++没有提供Java中的垃圾回收机制,因此 boost 实现智能指针用来管理内存避免一些问题。C++继承 C 高效灵活地指针,但是同样带了了很多问题:
内存泄露 memory leak
野指针 wild pointer
越界访问 access denied
虽然STL提供了 auto_ptr,但是受限太多(不能放到容器中,因为不支持拷贝构造函数和赋值),因此很少有人使用。
智能指针(smart_ptr)是Boost各组件中,应用最为广
Read more ...
date_time 日期相关的库,是 boost 中少数需要编译的库,但是实践中,在 Linker 链接器中链接 libboost_date_time.a 即可。也就是在链接时,加上 -l(boost_date_time) 参数。
头文件
使用 date_timer 需要包含以下头文件。
diedaiqi
#include <boost/date_time/gregorian/gregorian.hpp>
using namespace boost::gregorian;
date基本使用
将时间想象成无线延伸的实数轴,
Read more ...
C++中操作时间的类。timer 是一个很小的库,提供简易的度量时间和进度显示的功能,可用于测试性能计时任务等大多数情况。timer 库包含三个组件, 计时器类 timer, progress_timer 和进度条指示类 progress_display。对应书中第二章内容。
timer
头文件
timer 位于boost命名空间,需要包含头文件 <boost/timer.hpp> 即:
#include <boost/timer.hpp>
using namespace boost;
基本方法
timer变量声明之后即
Read more ...
那天需要将一段视频文件转成 gif,偶遇 ffmpeg,于是就学习了一下,它真的很强大。在看资料的过程中也是挺有趣的,发现其实 kmplayer 以及国内的 QQ 影音,暴风等等,都不同程度的使用了 ffmpeg,可是根据 ffmpeg 的开源许可 LGPL,任何使用 ffmpeg 的软件都必须开源,于是乎 QQ 影音,暴风都上了 ffmpeg 的耻辱柱,如果没接触到 ffmpeg 还真不知道有这一茬,国内的黑心厂商真是拿开源社区的东西都不遵循开源协议。
下面就直接进正题吧:
几个概念
在进入 ffmpeg 入门之前有一些基本概念需要了解,我在查看
Read more ...
开始接触boost是因为项目中用到C++与Python的相互调用传值,后来找到一本《boost程序库完全开发指南》感觉boost库很强大,就学了一下。所以boost学习笔记基本沿用《boost程序库完全开发指南》书中脉络。
因为C++是强类型语言,所以对于Python,perl之类的动态语言来说很麻烦的一件事情就是类型转换,虽然C中也提供了atoi(),atof()之类的函数,但是总体也还是很麻烦。幸而有了lexical_cast,他可以用来进行字符串、整数/浮点数之间的字面转换。
头文件
lexical_cast 位于boost命名空间,为了使用
Read more ...
这篇文章讲如何安装 boost 库,最完整的教程永远在官网。以下内容部分翻译自官方文档。
首先来看一看在Linux下安装 boost 库。
Ubuntu/Debian/Linux Mint 安装boost
运行以下命令:
sudo apt-get install libboost-all-dev
然后输入密码,安装,安装完之后目录在 /usr/include/boost 下。
Linux下使用
Eclipse或者其他IDE中使用 boost 时,需要以下几步,引入头文件,添加库。
C/C++ Build, Cross G++ Linke
Read more ...