上一页 1 ··· 83 84 85 86 87 88 89 90 91 ··· 94 下一页
摘要: 电子计算机能以极高速度进行信息处理和加工,包括数据处理和加工,而且有极大的信息存储能力。数据在计算机中以器件的物理状态表示,采用二进制数字系统,计算机处理所有的字符或符号也要用二进制编码来表示。用二进制的优点是容易表示,运算规则简单,节省设备。人们知道,具有两种稳定状态的元件(如晶体管的导通和截止,继电器的接通和断开,电脉冲电平的高低等)容易找到,而要找到具有10种稳定状态的元件来对应十进制的10个数就困难了。二进制数的基数是2,只有0和1两个数字,逢2进1。十进制数有0,1,…9十个数字,逢10进1。因为二进制最简单,只有0和1,计算的速度也是最快的,和计算机追求的速度不谋而合,而十六进制, 阅读全文
posted @ 2009-06-18 15:36 小 楼 一 夜 听 春 雨 阅读(889) 评论(0) 推荐(0)
摘要: 在设计过程中给类,方法和函数好的命名会带来好的设计,虽然这不是一定成立,但是如果坏的命名那一定不会给你带来好的设计。在设计过程,如果你发现你很难命名某一个模块,某个方法时,可能你真正遇到的问题不是难命名的问题,而是这个设计是否真的合理,你或许应该花更多的时间来重新设计一下你的模块。好的命名不仅会带来好的设计,好的命名还提高了程序的可读性,降低代码维护的成本。另一方面,如果糟糕的命名会给代码带来一堵无形的墙,让你必须深入代码去研究代码具有的行为,增加你理解代码的时间。为此我总结了几条关于命名的指导原则,希望这几条原则能为你的命名设计带来帮助,我使用的是C++的语法,当然这些原则也很容易扩展到其他 阅读全文
posted @ 2009-06-18 14:42 小 楼 一 夜 听 春 雨 阅读(341) 评论(0) 推荐(1)
摘要: 一.内存对齐的初步讲解内存对齐可以用一句话来概括:“数据项只能存储在地址是数据项大小的整数倍的内存位置上”例如int类型占用4个字节,地址只能在0,4,8等位置上。例1:#include <stdio.h>struct xx{ char b; int a; int c; char d;};int main(){ struct xx bb; printf("&a = %p/n", &bb.a); printf("&b = %p/n", &bb.b); printf("&c = %p/n" 阅读全文
posted @ 2009-06-16 19:24 小 楼 一 夜 听 春 雨 阅读(6890) 评论(2) 推荐(3)
摘要: for语句的执行顺序2007-09-08 10:58Theforstatement is written:for(e1;e2;e3)statementFirst,e1, usually an assignment statement, is executed. Thene2, usually a comparison, is evaluated. Iffalse, the for-loop terminates. Iftrue,statementis executed. Finally,e3, usually an assignment statement, is executed, and 阅读全文
posted @ 2009-06-15 22:13 小 楼 一 夜 听 春 雨 阅读(11155) 评论(0) 推荐(0)
摘要: #include <fstream>#include <vector>using namespace std;int main(){ ifstream ifs; ifs.open("1.txt"); if(ifs == NULL) return; vector< vector<int> > vec; vector<int> vec_tmp; int tmp; int i = 0; while (ifs.good()) { ++i; ifs>>tmp; vec_tmp.push_back(tmp); if 阅读全文
posted @ 2009-06-15 20:29 小 楼 一 夜 听 春 雨 阅读(1483) 评论(0) 推荐(0)
摘要: 这7种结构型设计模式是下面7种:Adapter 适配器模式 Bridge 桥接模式 Composite 组合模式 Decorator 装饰模式 Facade 外观模式 Flyweight 享元模式 Proxy 代理模式 对比:Adapter模式主要应用于“希望复用一些现存的类,但是接口又与复用环境要求不一致的情况” ,在遗留代码复用、类库迁移等方面非常有用。 Bridge模式的应用一般在“两个非常强的变化维度”。Bridge模式使用“对象间的组合关系”解耦了抽象和实现之间固有的绑定关系,使得抽象和实现可以沿着各自的维护来变化。 Composite模式采用树形结构来实现普遍存在的对象容器,从而将 阅读全文
posted @ 2009-06-13 10:49 小 楼 一 夜 听 春 雨 阅读(295) 评论(0) 推荐(0)
摘要: #ifndef COMPOSITE_H_#define COMPOSITE_H_#include <list>// 提供接口的抽象基类class Component {public: Component() {} virtual ~Component () {} /* 因为Component的每个子类无论是Leaf还是Composite都必须实现自己版本的 operation()函数,所以定义为纯虚函数。 */ // 纯虚函数只提供接口不提供默认实现 virtual void operation() = 0; /* 因为下面这几个函数只有Composite类才实现自己的版本, 而L 阅读全文
posted @ 2009-06-05 22:54 小 楼 一 夜 听 春 雨 阅读(276) 评论(0) 推荐(0)
摘要: Google C++编程风格指南(一):头文件 【本文】Google C++编程风格指南(二):作用域Google C++编程风格指南(三):C++ 类Google C++编程风格指南(四):智能指针和其他C++特性Google C++编程风格指南(五):命名约定Google C++编程风格指南(六):代码注释Google C++编程风格指南(七):格式Google C++编程风格指南(八):规则之例外背景 Google的开源项目大多使用C++开发。每一个C++程序员也都知道,C++具有很多强大的语言特性,但这种强大不可避免的导致它的复杂,这种复杂会使得代码更易于出现bug、难于阅读和维护.. 阅读全文
posted @ 2009-06-05 19:02 小 楼 一 夜 听 春 雨 阅读(292) 评论(0) 推荐(0)
摘要: 第一组 1.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢? 2.你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻? 3.如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都不均匀,问你如何才能准确称出4公升的水? 4.一个岔路口分别通向诚实国和说谎国。来了两个人,已知一个是诚实国的,另一个是说谎国的。诚实国永远说实话,说谎国永远说谎话。现在你要去说谎国,但不知道应该走哪条路,需要问这两个人。请问应该怎么问? 5.12... 阅读全文
posted @ 2009-06-05 08:28 小 楼 一 夜 听 春 雨 阅读(845) 评论(0) 推荐(0)
摘要: 是关于统一建模语言、即UML 里采用的基本图的文章。在这篇文章中,我将会讨论结构图,这是已经在 UML 2中提出的一种新图种类。由于本系列文章的目的是使人们了解记号元素及它们的含意,该文主要关注类图。你很快就会知道这样做的理由。随后的文章将会覆盖结构范畴中包含的其它图。我也想提醒读者,这一系列文章是关于 UML记号元素的,所以这些文章并不意味着为建模的最好方式提供指导方针,或是该如何决定哪些内容应该首先被建模。相反的,该文及本系列文章的目的主要是帮助大家对于记号元素 -- 语法和含义有一个基本的理解。借由这些知识,你应该可以阅读图,并使用正确的记号元素创建你自己的图。这篇文章假定你对面向对象的 阅读全文
posted @ 2009-06-05 08:25 小 楼 一 夜 听 春 雨 阅读(1473) 评论(0) 推荐(0)
上一页 1 ··· 83 84 85 86 87 88 89 90 91 ··· 94 下一页