- 博客(16)
- 收藏
- 关注
转载 设计模式(四)---代理模式
GOOD: 远程代理,可以隐藏一个对象在不同地址空间的事实 虚拟代理:通过代理来存放需要很长时间实例化的对象 安全代理:用来控制真实对象的访问权限 智能引用:当调用真实对象时,代理处理另外一些事 例: #include #include using nam
2011-09-23 13:52:13
267
转载 设计模式(三)---装饰模式
动态地给一个对象添加一些额外的职责(不重要的功能,只是偶然一次要执行),就增加功能来说,装饰模式比生成子类更为灵活。建造过程不稳定,按正确的顺序串联起来进行控制。 GOOD:当你向旧的类中添加新代码时,一般是为了添加核心职责或主要行为。而当需要加入的仅仅是一些特
2011-09-17 17:50:44
263
转载 webservice(一)---c#开发webservice
1.1、Web Service Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使
2011-09-17 17:49:43
393
转载 设计模式(二)---策略模式
定义算法家族,分别封装起来,让它们之间可以互相替换,让算法变化,不会影响到用户 GOOD:适合类中的成员以方法为主,算法经常变动;简化了单元测试(因为每个算法都有自己的类,可以通过自己的接口单独测试。 策略模式和简单工厂基本相同,但简单工厂模式
2011-09-15 19:50:58
265
转载 设计模式(一)---简单工厂模式
主要用于创建对象。新添加类时,不会影响以前的系统代码。核心思想是用一个工厂来根据输入的条件产生不同的类,然后根据不同类的virtual函数得到不同的结果。 GOOD:适用于不同情况创建不同的类时 BUG:客户端必须要知道基类和工厂类,耦合性差 (工厂类与基类为关联关系)
2011-09-15 19:42:38
227
转载 深入理解 C++ 指针(十)---指针与链表问题
红色部分所示的程序语句有问题,改正后的程序在下面。 list1.c struct listNode { int data; struct listNode *nextPtr; }; typedef struct listNode LISTNO
2011-09-14 17:16:09
389
转载 深入理解 C++ 指针(九)---指针的安全问题
看下面的例子: 例十七: char s='a'; int *ptr; ptr=(int*)&s; *ptr=1298; 指针ptr是一个int*类型的指针,它指向的类型是int。它指向的地址就是s的首地址。在32位程序中,s占一个字节,in
2011-09-14 17:09:19
359
转载 深入理解 C++ 指针(八)---指针类型转换
当我们初始化一个指针或给一个指针赋值时,赋值号的左边是一个指针,赋值号的右边是一个指针表达式。在我们前面所举的例子中,绝大多数情况下,指针的类型和指针表达式的类型是一样的,指针所指向的类型和指针表达式所指向的类型是一样的。 例十四: 1.float f=12.3;
2011-09-14 16:23:21
489
转载 深入理解 C++ 指针(七)---指针和函数的关系
可以把一个指针声明成为一个指向函数的指针。 int fun1(char*,int); int (*pfun1)(char*,int); pfun1=fun1; .... int a=(*pfun1)("abcdefg",7);//通过函数指针调用函数。 可
2011-09-14 15:41:10
235
转载 深入理解 C++ 指针(六)---指针和结构类型的关系
可以声明一个指向结构类型对象的指针。 例十一: struct MyStruct { int a; int b; int c; } MyStruct ss={20,30,40};//声明了结构对象ss,并把ss的三个成员初始化为20,30和40。
2011-09-14 15:37:37
296
转载 深入理解 C++ 指针(五)---数组和指针的关系
如果对声明数组的语句不太明白的话,请参阅我前段时间贴出的文章>。 数组的数组名其实可以看作一个指针。看下例: 例八: int array[10]={0,1,2,3,4,5,6,7,8,9}; int value; value=array[
2011-09-13 19:58:44
254
原创 深入理解 C++ 指针(四)---指针表达式
一个表达式的最后结果如果是一个指针,那么这个表达式就叫指针表达式。 下面是一些指针表达式的例子: 例六: int a,b; int array[10]; int *pa; pa=&a;//&a是一个指针表达式。 int **ptr=&pa;//&pa也
2011-09-13 19:40:47
369
原创 深入理解 C++ 指针(三)---运算符&和*
运算符&是取地址运算符,*书上叫做“间接运算符”。&a的运算结果是一个指针,指针的类型是a的类型加个*,指针所指向的类型是a的类型,指针所指向的地址嘛,那就是a的地址。*p的运算结果就五花八门了。总之*p的结果是p所指向的东西,这个东西有这些特点:它的类型是p指向的类型,它所占用
2011-09-13 19:35:17
330
转载 深入理解 C++ 指针(二)---指针的算术运算
指针的算术运算 指针可以加上或减去一个整数。指针的这种运算的意义和通常的数值的加减运算的意义是不一样的。例如: 例二: 1.char a[20]; 2.int *ptr=a; 3.ptr++; 在上例中,指针ptr的类型是int*,它指向的
2011-09-13 13:22:28
397
转载 深入理解 C++ 指针(一)---指针的概念
指针是一个特殊的变量,它存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int*p
2011-09-13 13:17:00
289
原创 Visual studio 常见问题
1、打开工作区时出现了如下错误: cannot access the ClassView information file.ClassView information will not be available.解决方法:a.关闭工程b.删除工程下.clw .ncb 文件及/debug目录,c.重建工程build all
2011-02-22 10:26:00
375
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人