随笔分类 -  c++

【读书笔记】工厂方法模式代码(C#,C++)
摘要:工厂方法模式,定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法模式克服了简单工厂模式违反开放-封闭原则的缺点,又保持了封装对象创建过程的优点,缺点是由于每加一个产品,就需要加一个产品工厂类,增加了额外的开发量。 C#代码下载:/Files/cappuccino/Factory.rar C++代码下载:/Files/cappuccino/FactoryForC.rar以上代码相应的UM... 阅读全文
posted @ 2010-08-12 23:32 陈孝勇 阅读(323) 评论(0) 推荐(0)
【转】C++纯虚函数
摘要:一、定义  纯虚函数是在基类中声明的虚函数,它在基类中没有定义,但要求任何派生类都要定义自己的实现方法。在基类中实现纯虚函数的方法是在函数原型后加“=0”   virtual void funtion1()=0 二、引入原因  1、为了方便使用多态特性,我们常常需要在基类中定义虚拟函数。   2、在很多情况下,基类本身生成对象是不合情理的。例如,动物作为一个基类可以派生出老... 阅读全文
posted @ 2010-08-12 15:11 陈孝勇 阅读(318) 评论(0) 推荐(0)
【读书笔记】代理模式翻译成C++了
摘要:代理模式一般用在四种情况下:1、远程代理,也就是为一个对象在不同的地址空间提供局部代表。这样可以隐藏一个对象存在于不同地址空间的事实。 2、虚拟代理,是根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真实对象。 3、安全代理,用来控制真实对象访问时的权限。 4、智能指引,是指调用真实对象时代理额外做一起其他事情。  代码下载如下:/Files/cappuccino/ProxyModel... 阅读全文
posted @ 2010-08-12 14:33 陈孝勇 阅读(243) 评论(1) 推荐(0)
【读书笔记】将装饰模式翻译成C++了
摘要:如题,与大家分享,还希望高手指点出不足~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 代码如下:https://files-cdn.cnblogs.com/fil 阅读全文
posted @ 2010-08-11 01:14 陈孝勇 阅读(161) 评论(0) 推荐(0)
【读书笔记】设计模式三个原则+一个法则
摘要:1、单一职责原则  就一个类而言,应该仅有一个引起它变化的原因2、开放-封闭原则  尽量让代码可以扩展(开放),但是写好的代码尽量不要修改(封闭)3、依赖倒转原则  写代码要根据接口写(或者说要根据抽象写)而不是根据实现写,如下所示  4、迪米特法则  如果两个类不必彼此通讯,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。其实就... 阅读全文
posted @ 2010-08-09 13:24 陈孝勇 阅读(283) 评论(0) 推荐(0)
【读书笔记】将策略模式转换成C++代码
摘要:如题,下载地址如下,希望高手指教,哈/Files/cappuccino/TacicsModelForC.rar 阅读全文
posted @ 2010-08-08 02:12 陈孝勇 阅读(182) 评论(0) 推荐(0)
【转】Const,Const函数,Const变量,函数后面的Const
摘要:Const,Const函数,Const变量,函数后面的Const 看到const 关键字,C++程序员首先想到的可能是const 常量。这可不是良好的条件反射。如果只知道用const 定义常量,那么相当于把火药仅用于制作鞭炮。const 更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体。const 是constant 的缩写,“恒定不变”的意思。被const 修饰... 阅读全文
posted @ 2010-08-08 01:53 陈孝勇 阅读(224) 评论(0) 推荐(0)
c++把string(或char) 转换成int(或double)
摘要:#include <string> #include <strstream> #include <sstream> std::string str = "123"; std::stringstream ss; int i = 0; ss<< str; ss>> i; 就可以把字符"123", 变成 数字 123。 阅读全文
posted @ 2010-08-08 01:19 陈孝勇 阅读(417) 评论(0) 推荐(0)
fatal error C1093 系统找不到指定的路径 C++/C VS2008
摘要:fatal error C1093: API call 'ImportFile' failed '0x80070003' : ErrorMessage: 系统找不到指定的路径(The system can't find the directory properly)。 主要是说找不到我自己创建的一个类的文件,我的程序曾在我的台式计算机上编译过(当时编译都通过了,且能正确执行),现在是拷贝到自己的笔... 阅读全文
posted @ 2010-08-07 23:00 陈孝勇 阅读(1123) 评论(0) 推荐(0)
【转】string转char *方法总结
摘要:C/C++ codestring 是c++标准库里面其中一个,封装了对字符串的操作 把string转换为char* 有3中方法: 1。data 如: string str="abc"; char *p=str.data(); 2.c_str 如:string str="gdfd"; char *p=str.c_str(); 3 copy 比如 string str="hello"; char p[... 阅读全文
posted @ 2010-08-06 06:36 陈孝勇 阅读(311) 评论(0) 推荐(0)
【读书笔记】将简单工厂模式翻译成C++了
摘要:C++写的简单工厂模式与大家分享:/Files/cappuccino/SimpleFactoryForC.rar写的不好的地方欢迎大虾们指教! 阅读全文
posted @ 2010-07-26 01:44 陈孝勇 阅读(265) 评论(0) 推荐(0)
vs2008设置include与lib的方法
摘要:tools-->options--->projects and solutions-->VC++ directoris 然后在show directoris for 中选择 下面是安装DirectX SDK时搜到的 1 首先要安装DirectX SDK 2 打开 VS2008 工具---》选项----》项目和解决方案----》VC++ 文件夹 Show Directories f... 阅读全文
posted @ 2010-07-20 00:19 陈孝勇 阅读(1981) 评论(0) 推荐(0)
在写Windows程序的时候使用CString 的话,就会出现error C2065: CString : 未声明的标识符
摘要:在写Windows程序的时候使用CString 的话,就会出现error C2065: CString : 未声明的标识符我是在主函数文件中#include <atlstr.h>,然后就可以了。 阅读全文
posted @ 2010-07-05 00:17 陈孝勇 阅读(888) 评论(0) 推荐(0)
【转】王老师 C++ 函数重载和模板
摘要:(1)连接指示符:通知编译器,某个函数是由其它语言编写的。语法:1. extern "语言名" 函数原型;2. extern "语言名" { 函数原型1; ... 函数原型n;}3.extern "语言名" { include 文件名}原因:C++语言编译器会对函数重载进行重命名(Name-Mangling);但是在C语言中,由于不允许出现同名的全局函数(静态全局函数除外),不需进行重命名。所以在... 阅读全文
posted @ 2010-06-12 21:36 陈孝勇 阅读(313) 评论(0) 推荐(0)
【转】函数重载解析
摘要:<<C++ Primer>>学习笔记---函数重载解析 一、普通重载函数的解析重载函数的解析可以分为三个步骤来执行:1.查找候选函数,并检查函数调用实参表的属性;2.选择可行函数;3.对函数实参到形参的转换进行分级,并选出最佳可行函数。下面对各个步骤进行详细的叙述。1.查找候选函数,并检查函数调用实参表的属性所有在调用点可见的同名函数声明,及当调用函数的实参中有名字空间成员... 阅读全文
posted @ 2010-06-12 21:32 陈孝勇 阅读(334) 评论(0) 推荐(0)
UML快速入门
摘要:大家好,这段时间看了一些与UML有关的书,觉的有一点心得,特意总结了一下,希望与大家分享,由于本人技术也有限有的地方讲的不是很好请大家指出,本篇文章也是交流为主,有什么意见与补充的地方大家请留言~~~~~ 附:本文章中的图片可能比较小有时看不清,我已经把图片放在我的控件中有需要的朋友可以下载来看看, 阅读全文
posted @ 2008-10-16 10:58 陈孝勇