- 博客(16)
- 资源 (40)
- 收藏
- 关注
原创 数据结构-链式栈
编译错误:passing ‘const LinkStack’ as ‘this’ argument discards qualifiers [-fpermissive] 解决方法:C++中const 引用的是对象时只能访问该对象的const 函数,因为其他函数有可能会修改该对象的成员,编译器为了避免该类事情发生,会认为调用非const函数是错误的。 函数末尾加const,表示不会修改该对象的成员
2016-11-30 21:48:07 369 1
原创 数据结构-顺序栈
// sequence_stack.h#ifndef SEQUENCE_STACK_H#define SEQUENCE_STACK_H#include template class SeqStack{public: SeqStack(int size) : m_stack_top(-1), m_maxsize(size) {
2016-11-28 17:24:55 237 1
原创 数据结构-双链表
// nodelist.h#ifndef NODELIST_H#define NODELIST_Htemplate class DoublyList;template class ListNode{private: friend class DoublyList; ListNode() : m_pprio
2016-11-25 09:35:49 280 1
原创 数据结构-单链表
部分编译器不支持模板类重载“”操作符时,模板函数生命与定义分离,必须在类内部直接实现。// nodelist.h#ifndef LISTNODE_H#define LISTNODE_H#include template class SingleList;template class ListNode{
2016-11-24 10:20:12 311 1
原创 数据结构-顺序表
(MinGW编译器不支持 模板声明与定义分离在多个文件中)// sequencelist.h#ifndef SEQUENCELIST_H#define SEQUENCELIST_H#include const int DefaultSize = 100;template class SequenceList{public: Sequ
2016-11-23 09:58:37 207 1
原创 设计模式-访问者模式
适用情境 : 把对象和对象上的次要操作分离开,以符合单一职责原则.// visitor.h#ifndef VISITOR_H#define VISITOR_Hclass Server;class Visitor{public: virtual void VisitServerA(Server* serverA) = 0; virtual void VisitServerB(S
2016-11-11 11:05:57 248 1
原创 设计模式-解释器模式
适用情境 : 一些指令需要类似语言翻译方式来执行的方式的应用场景.// context.h#ifndef CONTEXT_H#define CONTEXT_H#include class Context{public: Context(std::string input);public: std::string m_input; std::strin
2016-11-10 12:04:27 227 1
原创 设计模式-享元模式
适用情境:需要大量共享对象,以节省内存开销.// flyweight.h#ifndef FLYWEIGHT_H#define FLYWEIGHT_Hclass Flyweight{public: virtual void Show() = 0;};#endif // FLYWEIGHT_H// sharedflyweight.h#ifndef SHAREDFLYWEIGHT_H
2016-11-09 22:34:51 167 1
原创 设计模式-中介者模式
使用情境:封装一系列对象的交互方式,使得各对象之间不用显示互相调用,降低耦合.// person.h#ifndef PERSON_H#define PERSON_H#include "mediator.h"class Person{public: Person(Mediator* tmp); virtual void Send(std::string msg) = 0;
2016-11-09 21:31:19 234 1
原创 设计模式-职责链模式
适用情境:根据请求的不同,交由不同的对象处理,请求沿着一条链传递,知道有一个对象处理为止.// request.h#ifndef REQUEST_H#define REQUEST_H#include class Request{public: Request(std::string content, int number);public: std::stri
2016-11-09 17:32:39 183 1
原创 设计模式-命令模式
使用情境:把操作的请求者与请求的执行者分离开.添加新命令类型,不影响已有的命令.// receiver.h#ifndef RECEIVER_H#define RECEIVER_Hclass Receiver{public: Receiver(); virtual void ExecuteCommandA(); virtual void ExecuteCommandB(
2016-11-09 14:30:13 218 1
原创 设计模式-桥接模式
适用情境:当继承不能完全分离抽象部分和实现部分时,选择桥接模式来符合”开放-封闭原则”.// classa.h#ifndef CLASSA_H#define CLASSA_H#include "classb.h"class ClassA{public: ClassA(); virtual void Run() = 0; void SetClassB(ClassB* c
2016-11-09 11:03:06 245 1
原创 设计模式-单例模式
使用情境:确保一个类仅有一个对象实例.// singleton.h#ifndef SINGLETON_H#define SINGLETON_Hclass Singleton{private: Singleton(); static Singleton* single_instance;public: static Singleton* GetInstance();
2016-11-08 15:12:30 228 1
原创 设计模式-组合模式
适用情境:把操作简单对象和复杂对象的接口统一,使得客户端使用组合对象和简单对象的方式一致.// component.h#ifndef COMPONENT_H#define COMPONENT_H#include class Component{public: Component(std::string strName); virtual void Add(Co
2016-11-03 23:38:54 205 1
原创 设计模式-备忘录模式
适用情境:在一个对象外部记录其状态,在对象状态改变后提供恢复以前状态的功能.// device.h#ifndef DEVICE_H#define DEVICE_H#include "memo.h"class Device{public: Device(); Memo* CreateMemo(); void Recover(Memo* memo); void S
2016-11-02 23:55:33 197 1
原创 设计模式-适配器模式
适用情境:在源接口和目标接口都不适宜修改的情况下,把源接口转换成目标接口.// target.h#ifndef TARGET_H#define TARGET_Hclass Target{public: Target(); virtual void Request();};#endif // TARGET_H// target.cpp#include "target.h"
2016-11-02 21:56:54 243 1
ARM体系结构与编程.pdf
2012-10-26
putty通信工具
2012-10-25
Thinking in C++
2011-03-26
JCREATOR 4.5官方安装包
2009-09-14
UNIX网络编程卷2
2009-08-08
UNIX网络编程卷2(2)进程间通信
2009-08-08
UNIX网络编程卷2(1)
2009-08-08
华清远见linux驱动程序开发
2009-07-25
华清远见linux驱动程序开发
2009-07-25
华清远见Linux培训资料集合
2009-07-25
华清远见Linux培训资料集合
2009-07-25
华清远见Linux培训资料集合
2009-07-25
华清远见Linux培训资料集合
2009-07-25
华清远见Linux培训资料集合
2009-07-25
华清远见Linux培训资料集合
2009-07-25
编译原理(陈火旺第三版)练习答案.pdf
2009-07-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人