自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Phoenix_FuliMa

淡泊以明志,宁静以致远。

  • 博客(19)
  • 资源 (14)
  • 收藏
  • 关注

原创 C++实现代理模式

/* 代理模式:为其他对象提供一种代理,以控制对这个对象的访问 Created by Phoenix_FuliMa*/#include #include using namespace std;class Receiver{private: string name;public: Receiver(string name):name(name) { } str

2012-10-31 23:19:53 831

原创 C++实现装饰者模式

/* 装饰者模式:动态的给一些对象增加一些额外的功能,就增加功能来说,装饰着模式比生成子类更加灵活*/#include using namespace std;class Component{public: virtual void diplay() = 0;};class ConcreteComponent: public Component{public: vi

2012-10-31 20:10:31 611

原创 职责链设计模式解决if else多分支问题

具体方案具体分析,此代码适合分类业务进行的if else操作,解决多分支问题//方案一:职责链设计模式#include #include #include #include using namespace std;typedef string KV;class ProcessCmdFromWeb{protected: ProcessCmdFromWeb *suc

2012-10-29 19:04:11 4303

原创 C++实现建立大根堆

#include using namespace std;void swap(int *a, int *b){ int tmp = *a; *a = *b; *b = tmp;}void adjust_heap(int *Array, int index, int len){ int cur = index; int right_child = 2 * (cur + 1)

2012-10-28 22:39:45 4275

转载 Python 的 Socket 编程教程

这是用来快速学习 Python Socket 套接字编程的指南和教程。Python 的 Socket 编程跟 C 语言很像。Python 官方关于 Socket 的函数请看 http://docs.python.org/library/socket.html基本上,Socket 是任何一种计算机网络通讯中最基础的内容。例如当你在浏览器地址栏中输入 www.oschina.net 时

2012-10-25 20:43:58 1614

原创 原型模式代码示例

注意事项(1)根据原型模式的UML图可以知道,实现要依赖于抽象要不要依赖与具体(2)拷贝构造函数是核心,而且针对c++要进行的是深拷贝(3)克隆函数的关键就是调用拷贝构造函数#include using namespace std;class Student{protected: int id; char name[10];public: Student

2012-10-25 09:07:14 771

转载 友元函数和友元类

友元函数和友元类        采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。但是,有时需要定义一些函数,这些函数不是类的一部分,但又需要频繁地访问类的数据成员,这时可以将这些函数定义为该函数的友元函数。除了友元函数外,还有友元类,两者统称为友元。友元的作用是提高了程序的运行效率(即减少了类型检查和安全性检

2012-10-22 09:53:14 711

原创 策略模式-应用代码示例

设计思想非常好,充分体现了策略模式的特点以下代码修改后转载#include #include using namespace std;class ReplaceAlgorithm{public: virtual void Replace() = 0;};class LRU_ReplaceAlgorithm:public ReplaceAlgorithm{publi

2012-10-21 10:30:18 619

原创 C++构造函数执行顺序测试(成员包含其他类对象的时候)

#include #include using namespace std;class A{public: A() { printf("A constructor.....\n"); } ~A() { printf("A destructor......\n"); }};class B{public: B() { printf("B constr

2012-10-21 09:46:08 1901

原创 设计模式的六大原则

1. 开闭原则(Open-Closed Principle: OCP)     对软件实体可以扩展,但是不可以修改。在一个系统中,对扩展是开放的,但是对修改是关闭的,一个好的系统可以再不修改源码的情况下扩展功能,满足对软件的新的需求。2. 里式替换原则(Liskov Substitution Principle: LSP)    子类必须能够替换它们的父类     举例:不符合的情

2012-10-20 23:21:00 978

转载 设计模式C++实现(1)——工厂模式

软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可复用面向对象软件的基础》两本书。本文介绍工厂模式的实现。       工厂模式属于创

2012-10-20 22:39:07 842

原创 libevent简单应用_4

#include #include #include #include #include #include #include #include /* 设置计数,只允许echo_write_cb调用一次 */static int count = 1;/*当有数据可读的时候,会调用这个函数 */static void echo_read_cb(struct bufferev

2012-10-20 10:38:22 2233 1

原创 libevent简单应用_3(来自源码)

//利用bufferevent_socket_connect()建立网络连接#include #include #include #include void eventcb(struct bufferevent *bev, short events, void *ptr){ if (events & BEV_EVENT_CONNECTED) { /* We

2012-10-19 20:20:19 2099

原创 libevent简单应用_2

目的:测试event_base_loop()函数 方法: 作为服务器端,当有数据到来的时候,立刻关闭base*/#include #include #include #include #include #include void cb(evutil_socket_t sock, short what, void *arg){ printf("function cb is c

2012-10-19 18:37:46 1078

原创 libevent简单应用_1_时间定时器

#include #include #include #include #include #include using namespace std;struct EventTimerParam{ struct timeval tv; void *ctx; void *evt;}; void libevent_tick_event_cb(evutil_socket_t

2012-10-19 17:09:47 3190

原创 水平触发和边缘触发的区别

水平触发(level-triggered,也被称为条件触发)LT: 只要满足条件,就触发一个事件(只要有数据没有被获取,内核就不断通知你)边缘触发(edge-triggered)ET: 每当状态变化时,触发一个事件     “举个读socket的例子,假定经过长时间的沉默后,现在来了100个字节,这时无论边缘触发和条件触发都会产生一个read ready notification通知应用程

2012-10-19 17:06:59 9899 1

转载 Makefile详解(自己觉得重新看一次学了好多东西,红色字)

Makefile详解跟我一起写 Makefile陈皓概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix

2012-10-17 22:53:47 14562 2

转载 linux下内存泄露检测工具介绍

Valgrind 概述体系结构Valgrind是一套Linux下,开放源代码(GPLV2)的仿真调试工具的集合。Valgrind由内核(core)以及基于内核的其他调试工具组成。内核类似于一个框架(framework),它模拟了一个CPU环境,并提供服务给其他工具;而其他工具则类似于插件(plug-in),利用内核提供的服务完成各种特定的内存调试任务。Valgr

2012-10-17 22:09:40 25860 1

原创 ERROR:Connection reset by peer

抛出的异常也有可能是客户端中断连接。 当客户端中断连接的时候服务器也会抛出这个异常出来。就是说客户端正在连接的时候 突然终止 了连接,这样,服务器端会抛出Connection reset by peer 异常出来

2012-10-16 09:19:02 1088

InstallShield2013LimitedEdition

InstallShield2013LimitedEdition,本人试验可以再vs2013上面使用,依据http://www.itnose.net/detail/6085548.html,这个教程,可以很快的把自己写的代码编译成安装程序。

2015-11-20

WPF核心技术扫描版

很好的学习C#、WPF的教程,很多人都是从这本书开始C#代码生涯的。 Include

2015-11-19

10天掌握MongoDB

非常有用的mongodb的学习材料!可以很快入门。

2015-11-19

VC++动态链接库(DLL)编程

VC++动态链接库(DLL)编程,深入理解DLL的应用

2012-11-20

STL原码剖析

STL原码剖析,源码面前,了无秘密,可以深入了解STL中容器的设计思想

2012-11-20

计算机网络课件(很牛的老师讲的)附 考试标准题库

第一章计算机网络概述 计算机网络:用各种通信手段,把地理分散的,且各自具有独立功能的计算机互联起来,互相通信且共享资源的系统。 计算机网络的特点:资源共享,高可靠性,节省投资,分布处理,网络管理,共享链路构成的网络1于信道的共享方式:电路交换。2基于排队的共享方式:报文交换和分组交换 分组交换的优点:高效 动态分配传输带宽,对通信链路是逐段占用。 2灵活 以分组为传送单位和查找路由。3迅速 不必先建立连接就能向其他主机发送分组;充分使用链路的带宽。4生存性好 完善的网络协议;自适应的路由选择协议使网络有很好的生存性。 缺点:1分组在各结点存储转发时需要排队,造成一定的时延。 2分组必须携带的首部(里面有必不可少的控制信息)也造成了一定的开销。 计算机网络的组成:网络工作站,网络服务器,网络交换设备,网络互连设备,网络外部设备,网络软件,网络传输设备。 总时延 = 发送时延 + 传播时延 + 处理时延,RFC就是请求评论(Request For Comments)

2010-08-14

华为SDH原理教材(很经典的)

您好欢迎阅读本课程随着华为技术有限公司的不断发展其通信产品的 应用也越来越广泛作为华为公司产品之一的SDH光传输产品OptiX 系 列155 622 2.5G 10G等产品已经被越来越多地用来组建各级传输网络 您是我们尊敬的客户如果准备学习我公司的OptiX 系列光传输产品 那么 本课程SDH原理正好适合于您通过学习这部分的内容使您对SDH建立起 一个整体的概念为以后深入学习SDH设备奠定基础

2010-08-14

华为2010年招聘笔试面试题库

笔试面试题库 华为公司的简介,以及全面的笔试题,包括C、C++,网络,硬件,应有尽有

2010-08-14

Linux笔试和面试题大全(保证是最全的 )

我找了很多地方才找到的 1 . RIP 协议是最为普遍的一种内部协议,一般称为动态路由选择协议。 2. 在Linux系统中所有内容都被表示为文件,组织文件的各种方法称为 文件系统 。

2010-08-14

C++面试题(最全的)

6. 关键字static的作用是什么? 这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用: 1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。 2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。 3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。 大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。

2010-08-14

C++笔试题(很全的)

很辛苦的找到的,比较全 表示已有答案 表示没有处理 表示答案不确定 C++笔试题 1.多态类中的虚函数表是Compile-Time,还是Run-Time时建立的? 答案:虚拟函数表是在编译期就建立了,各个虚拟函数这时被组织成了一个虚拟函数的入口地址的数组.而对象的隐藏成员--虚拟函数表指针是在运行期--也就是构造函数被调用时进行初始化的,这是实现多态的关键.

2010-08-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除