| Chuanbin 的个人资料Bruce's life照片日志列表 | 帮助 |
|
5月25日 #pragma pack() 的使用#pragma pack(4) 现在去掉第一个成员变量为如下代码: 事实上,很多人对#pragma pack的理解是错误的。 具体解释
最后看原贴: -------------------------------------下面是代码测试,Solaris8.0,gcc 2.95----------------------------------------- //一 #include <stdio.h> #pragma pack(4) int main() 输出为: bash-2.03$ gcc pragma.cpp -o pragma // 二 #pragma pack(4) 输出为: bash-2.03$ ./pragma // 三 #pragma pack(4) 输出为: bash-2.03$ gcc pragma.cpp -o pragma //四 #pragma pack(4) 输出为: bash-2.03$ ./pragma // 五 #pragma pack(4) 输出为: bash-2.03$ gcc pragma.cpp -o pragma //六 #pragma pack(4) 输出为: bash-2.03$ gcc pragma.cpp -o pragma //七 class testc 输出为: bash-2.03$ gcc pragma.cpp -o pragma 5月20日 类的原理有时我们可能会做出一些违背原理的事情,我们为什么要这么做?我们首先要明确我们的目标:是要创造更容易维护的系统。这些原理都是能够使我们创建出系统能力的工具。因此仔细考虑到各种原理是十分重要的,对于任何原理的违背都应该是有意识的设计选择。 我们创造了原理,是为我们的目标服务,而不是让我们受制于我们创造的原理。遵守原理,也要勇于突破原理,勇于创新。 1. 开方封闭原理(OCP Open Closed Principle) 对象类应该是开发的以便于扩充,又要是封闭的有利于修改。 2. Liskov 替代原理(LSP Liskov Substitution Principle ) 子类应该可以用来替代其基类 3. 依赖性倒置原理(DIP Dependency Inversion Principle) 依赖于抽象类,不要依赖于具体类 抽象耦合是指一个类不能与另一个类耦合,也不能和可实例化的类耦合。类该和其他基类或抽象基类耦合。这个概念实际上是LSP实现其灵活性所必须的方法,使DIP所必须的机制,也是OCP的核心思想。 4. 接口分离原理(ISP Interface Separate Principle) 多个专用接口由于一个单一的通用接口。 5. 构成重用原理(CRP Composite Reuse Principle) 对象构成物的多态性由于继承。 如果我们要在基类中定义缺省的行为的话,一定要保证这个行为适用于所有的派生类。 6. 最少知识原理(Principle of Lease Knowledge,PLK) 在一个类上的操作中,只有类本身、操作的参数对象、操作中创建的对象和类包含的实例对象等的操作可以被调用。
5月16日 关于atoi函数和itoa函数今天在网山查找这2个函数的时候,看到了这2个函数在solaris平台下的源代码,惊异于别人算法的精悍和语法的精湛。自己仅仅只是才开始而已~
// Solaris下atoi源码
>// Solaris平台itoa源码
|
|
|