CoolMind


If you cannot measure it, you cannot improve it.

iterator

STL中iterator 本文主要介绍STL中iterator。所参考的源码是g++ 4.8.2中的源码。 首先看下在根目录下头文件中的宏定义: _GLIBCXX_ITERATOR: 表示文件的include保护,防止多重引入 #pragm...

git basics

Git最初的作者是Linux内核的开发者Linus。之前linux内核维护是使用bitkeeper,但是他们发现有人在反编译bitkeeper,收回了对开源的特权。所以开源社区需要开发一个属于自己的版本控制工具,然后Git就诞生了。 Git 初探 Git与传统的中心控制的版本控制工具不同点...

vim configuration

作为在linux下的程序猿,如果不知道如何使用vim,那其实不算是一个真正的程序猿(前提是不在图形化界面的环境中)。但是vim是那种学习曲线比较陡峭的工具,只有你真正的长时间去化时间学习vim的命令你才可以真正的去了解,让vim称为神的编辑器。 这篇文章主要是想总结一下自己在vim使用过程中...

Implicit conversions

该博文翻译自Implicit conversion 目录 转换优先级 左值转换     左值到右值转换     数组名到指针的转换     函数指针的转换 数值提升     整型提升 数值转换     整型转换     浮点转换     浮点-整型转换     指针转换     指向成员指...

Multitasking Management in the Operating System Kernel

这篇文章翻译自KUKURUKU. 系统中的所有任务共享一个处理器上的时间,我们需要做多任务管理。或者说伪多任务,因为所有任务是共享一个处理器上的时间。首先,我会介绍多任务的类型(协作式/抢占式);然后我会继续介绍抢占式多任务中的调度原则。这篇文章已经针对第一次想从内核级别上理解多任务的读者做...

iostream用法

iostream是C++中一个比较复杂的库,其设计的时候还应用了为人所诟病的钻石继承。在GoNative大会上,有人提问iostream那么复杂,而且相对于C的库函数,其效率相对低,为什么还要将其一直留在标准中。这个问题得到了如下回答(个人总结): C++中的iostream是安全...

C++中动态内存分配

在C++语言中,总共有5种内存分配区域:栈,堆(heap),自由存储区(free store),常量存储区,全局(静态)存储区。其中堆是用malloc/free一对系统库函数来管理动态内存的申请和释放,自由存储区是用new/delete一对操作符来动态管理内存的分配和释放。new/delete...

C++中模板的学习

C++中的模板是C++中实现元编程的一种主要途径。元编程,即编写程序的程序。维基百科上说: Metaprogramming is the writing of computer programs that write or manipulate other programs (or th...