一.寄存器对象: 函数中频繁被使用的变量可以加上register就可声明为寄存器对象.对于寄存器对象,假如能够放到寄存器中就会放到寄存器中,放不到的话就放到内存中.比如 register int a,一般用于循环控制变量挺好的. 二.静态变量. 这里容易犯一个错误,记住,静态变量只初始化一次,没有初始化的会自动初始化为0 #include <iostream> int traceGcd( int v1, int v2 ) { static int depth = 1; cou…
http://www.agner.org/optimize/#manuals 阅读笔记Optimizing software in C++ 7. The efficiency of different C++ constructs 栈的速度快是因为,总是反复访问同一段地址,如果没有大的数组,肯定实在L1 cahce中. 全局静态区,global,static变量,float constants, string constants, array initializer lists,switch…
Think in UML 阅读笔记(三) 把从现实世界中记录下来的原始需求信息,再换成一种可以知道开发的表达方式.UML通过被称为之概念化的过程来建立适合计算机理解和实现的模型,这个模型被称为分析模型,它介于原始需求和计算机实现之间,是一种过渡模型.绘制分析模型最主要的元模型有:边界类(boundary).实体类(entity).控制类(control).UML采用控制类来表达原始需求中的动态信息,即业务或用例场景中的步骤和活动.除了控制类外,其他类之间都不能直接相互访问,他们需要通过控制类来代…