随笔分类 -  C/C++

摘要:一.递归问题的处理步骤 1)抽象出递归公式:对实际问题进行部分穷举,抽象出递归关系(关键),并列出“递归表达式” 2)确定递归出口:找出递归调用终止点二.菲波那契数列 实际问题:兔子繁殖问题 兔子在出生一个月后为成兔,两个月后就有繁殖能力,一对兔子每个月能生出一对小兔子来。如果所有 兔都不死,那么一年以后可以繁殖多少对兔子? 1)抽象出递归公式 初始为:1对幼兔 第n个月 1 2 3 4 5 6 7 幼兔: 1 0 1 1 2 3 5 成年兔: 0 1 1 2 3 5 8 总计: 1 1 2 3 5 8 13 规律... 阅读全文
posted @ 2012-05-09 16:58 edisonfeng 阅读(898) 评论(0) 推荐(0)
摘要:一、未使用虚函数的继承 a)父类与子类定义class Father{ public: Father(){} ~Father(){} void print(){cout<<"这是父类:Father"<<endl;}};class Clild_A:public Father{ void print(){cout<<"这是子类:Child_A"<<endl;}};class Clild_B:public Father{ void print(){cout<<"这是子类:Child_B&quo 阅读全文
posted @ 2011-10-17 23:29 edisonfeng 阅读(483) 评论(1) 推荐(1)
摘要:一、定义观察者类 a)观察者基类enum ObservedStatus {Dining, Sleeping, Working};/*******************************定义多个观察者类*************************************///定义观察者的父类(抽象类,实际作用相当于java中的接口)class Observer{ public: virtual void update(ObservedStatus status)=0; virtual ~Observer() {}//保证父类指针指向子类时,delete基类指针,子类的析构行... 阅读全文
posted @ 2011-09-06 16:58 edisonfeng 阅读(482) 评论(0) 推荐(0)
摘要:一、 基本特点: a)根据不同的情况,创建不同的对象 b)每个对象方法名相同,方法的实现差别很大二、组成: a)抽象策略: 1个 b)具体策略 多个,封装了相关的算法和行为 c)调度类: 持有一个具体策略类的引用,供客户端使用三、代码实现:#include<iostream>using namespace std;/*************************************策略基类****************************************/ class StrategyBase//主要定义了虚函数 { public: virtu... 阅读全文
posted @ 2011-09-05 17:26 edisonfeng 阅读(3743) 评论(0) 推荐(0)
摘要:Vector实质上就是一个:动态数组一、添加元素、遍历 vector<int> ages; ages.reserve(80);//指定容量为80 cout<<"vector的容量为:"<<ages.capacity()<<endl; //向容器中逐个添加元素 ages.push_back(100); ages.push_back(200); ages.push_back(300); cout<<"vector的元素个数为:"<<ages.size()<<endl; cou 阅读全文
posted @ 2011-08-30 00:53 edisonfeng 阅读(1847) 评论(0) 推荐(0)
摘要:一、主要作用 用作函数的形参a)未使用“引用”作为形参1 void SetValue(int _Height)2 {3 _Height=99;4 }5 int Height=10;6 SetValue(Height);7 cout<<"设置之后Height的值为:"<<Height<<endl;8 system("pause");9 return 0; 运行结果: 内存分配: b)使用“引用”作为形参1 void SetValue(int &_Height)2 {3 _Height=99;4 }5 int He 阅读全文
posted @ 2011-08-28 23:22 edisonfeng 阅读(554) 评论(1) 推荐(0)
摘要:一、加解密算法在网络通讯中的作用 a)使通讯信息不被第三方看到 报文加密:可采用DES或3DES算法DES和3DES算法可逆,接收方可通过密钥将密文还原 以下是使用第三方提供的dll中的DES算法进行报文加密: 1 #include 2 #include "des3.h" 3 #include "h... 阅读全文
posted @ 2011-08-04 22:29 edisonfeng 阅读(1446) 评论(0) 推荐(0)
摘要:一、VC程序调用VC编写的导出函数 a)定义 1)创建dll工程 2)在工程下添加源程序文件,并编写代码 源代码如下:1 _declspec(dllexport) int IntPlus(int a,int b)2 {3 return a+b;4 } 编译运行生成dll b)调用 1)创建普通的控制台工程并将要使用dll和lib文件拷贝至工程目录下 2)工程设置中,生命要使用的lib文件 3)编写源代码 1 #include<iostream> 2 using namespace std; 3 4 extern int IntPlus(int a,int b); 5 6 int m 阅读全文
posted @ 2011-08-02 10:23 edisonfeng 阅读(1229) 评论(1) 推荐(0)