- 博客(11)
- 资源 (12)
- 收藏
- 关注
原创 decorator模式
例子改编自《设计者模式解析(第二版)》214页,人民邮电出版社 意图:动态的给一个对象添加职责;即提供了“即插即用”方法,不用重新编译已有部分。 问题:要使用的对象将执行所需的基本功能。但是,可能需要为这个对像添加某些功能,这些附加的功能可能发生在对象的基本功能之前或之后。解决方案:可以无需创建子类而扩展一个对象的功能 优点:类的层次结构大小和复杂度有了很大程度的降低 缺点:1)如果装饰者本身是被装饰的,那么访问装饰模式中引进的特性将是非常困难的甚至
2010-08-31 23:36:00 503
原创 策略模式
策略模式C++实现 收藏 先看一下策略模式的UML类图:从类图可以看出,策略模式基本和简单工厂模式没什么区别,从我的理解他们两个最大的区别就是:简单工厂模式是实现对象的多样性,而策略模式适合类中的成员以方法为主; 简单工厂模式只能解决对象创建问题,对于经常变动的算法应使用策略模式。 放代码看看吧:Cpp代码 //策略基类 class COperation { public: int m_nFirst;
2010-08-28 16:36:00 561
原创 #与##在宏定义中的--宏展开
<br />#与##在宏定义中的--宏展开<br />#include <stdio.h><br />#define f(a,b) a##b<br />#define g(a) #a<br />#define h(a) g(a)<br /><br />int main()<br />{<br /> printf("%s/n", h(f(1,2))); // 12<br /> printf("%s/n", g(f(1,2))); // f(1,2)<br /> return 0;<br />}<br /
2010-08-27 17:08:00 1167 1
原创 如何用c写出面向对像的程序
如何写出优美的C代码:面向对象的C0推荐<br />http://www.bbs.topsage.com/thread-426058-1-1.html<br />面向对象的语言更接近人的思维方式,而且在很大程度上降低了代码的复杂性,同时提高了代码的可读性和可维护性,传统的 C 代码同样可以设计出比较易读,易维护,复杂度较低的优美代码,本文将通过一个实际的例子来说明这一点。<br /><br />基础知识<br /><br />结构体<br /><br />除了提供基本数据类型外,C 语言还提供给用户自己定制
2010-08-27 14:04:00 1040
原创 c语言版仿c++封闭动态数组
<br />#include <iostream> <br />#include <stdlib.h><br />using namespace std;<br />typedef int DataType; //是这样用吗?<br />struct DArray<br />{<br /> int capacity; //数组容量<br /> DataType *parray; //动态数组其实就是一个指向一块内在的指针.<br /> int c
2010-08-19 01:43:00 620
原创 转
看了下面的这篇文章,深有感触,枣子碰到的问题也是我们大多数程序员的通病,也许我们大多数人都只是在做一些比较小型的软件,对软件运行的效率不在乎,就算对速度和效率在乎的也可能是一些在数据库操作方面的。大家看完了,也许会有很多感想,但这只是我同意枣子的个人观点。 qI4Z*K (枣子原创--www.vcroad.net [email]wutao8@263.net[/email]) # %/1z Kx 做为一名大四的学生,我面试过不少的单位,有成功的也有失败的,但是对我来说所有的失败在某种意义
2010-08-17 01:15:00 693
原创 c语言版动态数组循环队列
<br />#include <iostream><br />#include <assert.h><br />using namespace std;<br />/*<br />struct Node<br />{<br /> int info;<br /> Node *next;<br />};<br />struct queuelk<br />{<br /> struct Node *front;<br /> struct Node *back;<br />};<br /><br />void ini
2010-08-17 00:59:00 1957
原创 数据结构队列
#include #include typedef int elemType;/************************************************************************//* 以下是关于队列顺序存储操作的6种算法 *//***********************************************************************
2010-08-16 22:12:00 533
原创 自己写的表达式求值.
#include #include using namespace std;char priority[7][7] = { {'>', '>', '', '>'}, {'>','>', '','>'}, {'>','>', '>','>', '','>'}, {'>','>', '>', '>', '', '>'}, {'', '>', '>', '>','E', '>','>'}, {'': { pop
2010-08-16 00:02:00 552
原创 表达式求值
<br />#include <iostream.h><br />#include <cstdio><br />#include <stdlib.h><br />#include <malloc.h><br />#define STATCK_INTI_SIZE 100<br />#define stackingcreement 10<br />#define TRUE 1<br />#define FALSE 0<br />#define OK 1<br />#define ERROR 0<br />#de
2010-08-15 20:47:00 470
原创 getchar的返回值问题
许多初学者都习惯用 char 型变量接收 getchar、getc,fgetc 等函数的返回值,其实这么做是不对的,并且隐含着足以致命的错误。getchar 等函数的返回值类型都是 int 型,当这些函数读取出错或者读完文件后,会返回 EOF。EOF 是一个宏,标准规定它的值必须是一个 int 型的负数常量。通常编译器都会把 EOF 定义为 -1。问题就出在这里,使用 char 型变量接收 getchar 等函数的返回值会导致对 EOF 的辨认出错,或者错把好的数据误认为是 EOF,或者把 EOF 误认为是
2010-08-14 01:24:00 5069 2
windows phone 下拉刷新
2014-05-04
Pro Expression Blend 4 for windows phone
2014-04-02
expression blend 3.0 好书一本(书名:FoundationExpressionBlend3)
2014-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人