Generic Programming (转)
Generic Programming (转)[@more@]Hello all. It's nice to meet you all here. I got a lot of knowledge from csdn. now, I try to feed back some. the topic is about Generic Programming.I paste a snippet to show how it works.Everyone who has studied the book Think in C++ 2nd Edition knows the sample, trash collection, which is at the end of chapter 10, Design pattern.Ok, let's begin with this.the sample mentioned in Think in C++ using double dispatch to implement the design. and I use Generic Programm
扫雷程序思想讲解 (转)
扫雷程序思想讲解 (转)[@more@] 扫雷程序思想讲解 在我大二的时候就编写了一个扫雷程序,现在也有很多源程序下载,我不知道他们的算法是怎么样的,但我想我的算法应是最清晰和简单的。下面就来讲解我的扫雷程序思想。 首先我们在雷区上随机地放上雷,没有雷的地方被点击后就会显示一个数字表示它周围有几个雷,这是怎么实现的呢?我们可以把整个雷区看成一个二维数组a[i,j],如雷区: 11 12 13 14 15 16 17 18 21 22 23 24 25 
BCB中的const 和volatile的组合用法还有。。。 (转)
BCB中的const 和volatile的组合用法还有。。。 (转)[@more@]1。const 是静态的修饰对于变量来说。 当volatle和const 一起用时: 很人可能对volatle不熟吧,它是说明一个变量和对象不仅可以由程序代码改变夜可以由硬件或操作系统,其他正在运行的线程所改变的。 const volatle unsinged int *recher=(const unsiged int*)1234; 应为有了const 的修饰,一般代码不可以改变指针指向的内容;又应为有volatile 的修饰,可以通过硬件(汇编语言)来改变哦。 2。名空间(namespace)的用法 例如:namespace recher{ int m
足球战术->单刀赴会之prototype篇 (转)
足球战术->单刀赴会之prototype篇 (转)[@more@]接上回: .NET/Develop/read_article.ASP?id=11949">http://www.csdn.net/Develop/read_article.asp?id=11949 使用prototype模式,用其他队员牵制对手的注意力,然后带球队员通过个人技术甩脱对方的防守,单刀赴会得分(clone)。就像皇马在西甲半程时齐达内进的那个球。好处是在进攻进行时决定是否射门或改用其他方法;动态控制射门;改用不同球员来变化射门方式;减少进攻需要的队员数;动态换人改变进攻来改变战术。缺点是:需要每个队员都有单刀赴会的能力,实现起来比较困难:)代码如
取得某一dll所有输出函数名 (转)
取得某一dll所有输出函数名 (转)[@more@]取得某一dll所有输出函数名在uses里加上ImageHlp procedure ListDLLFunctions(DLLName: String; List: TStrings);type chararr = array [0..$FFFFFF] of Char; var H: THandle; I, fc: integer; st: string; arr: Pointer; ImageDebugInformation: PImageDebugInformation;begin List.Clear; DLLName := ExpandFileName(DLLName); if FileExists(DLLName) then begin H := CreateFile(PChar(DLLName), GENERIC_RE
取得自从开机到现在CPU运行的周期数,超毫秒级的精度 (转)
取得自从开机到现在CPU运行的周期数,超毫秒级的精度 (转)[@more@]取得自从开机到现在cpu运行的周期数,超毫秒级的精度function Ticker : Dword; register;begin asm push EAX push EDX db $0f,$31 mov Result, EAX pop EDX pop EAX end;end; procedure TForm1.Button1Click(Sender: Tobject);begin showmessage(inttostr( Ticker));end; //rock//转载请保留此信息
软件深度挖掘(零)绝学无忧所引出的 (转)
软件深度挖掘(零)绝学无忧所引出的 (转)[@more@] 软件深度挖掘(零)绝学无忧所引出的老子曰:“绝学无忧”有两种人没有烦恼,一种是不用学习知识的人,一种是学完所有知识的人。 我们都想作为后者,于是我们不断努力着,于是也被无情的折磨着。当我们感觉自己没有这个能力完成它时,我们就会用事业有成来代替那个不可能实现的宏愿,毕竟创业是有机会成功的。但创业又不是公平的,因为我们的处境不一样,官方路线一般是我们这些没有别的出路的人的选择,这样能相对公平些。于是我们选择了一种新兴产业作为我们的创业行业--软
一个关于c++字符串处理和delete[]与delete差别的问题 (转)
一个关于c++字符串处理和delete[]与delete差别的问题 (转)[@more@] 一个关于c++字符串处理和delete[]与delete差别的问题 ---张吕全 先看下面一个字符串处理的小例子 CString str = "zhongguo";//在c++builder中CString 对应的类型AnsiString 其余一样 CString strtwo = str;//值拷贝 int *addr = (int*)&strtwo; char*p = (char*)*addr; *p = 'X'; AfxMessageBox(str);//cb中为 ShowMessage(str); 这时大家可以发现strtwo变成了Xhongguo这是正常的,然而再看str 却也变成了它
我眼里的RuntimeClass实现 (转)
我眼里的RuntimeClass实现 (转)[@more@]最近开始学习VC了,谈谈心得吧。班门弄斧,请多多指教。 心得之一: MFC中RuntiemClass支持的实现: 只要是从Cobject派生的类,可以轻松实现RuntiemClass支持。当然,是通过编译器提供的宏来实现的。那么其实现机制是怎样的呢?我觉得只需要四个步骤。 首先让我们简化一下CRuntiemClass和CObject的定义,抽取出与RuntiemClass相关的部分: struct CRuntimeClass{ char m_lpszClassName[255]; int m_nObjectSize; CObject* (*m_pfnCreateObject)(); CObject* CreateObject(
玉瑕
刘憬忽然觉得走在大街上的感觉很不错,人流擦肩而过,不必刻意倾斜眼光去追寻什么,偶尔回头,会觉得象另外一个世界,却不会找不着北。陌生,其实也很好。 楼梯处传来匆促的脚步声,两男两女疾赶而至。估计是老人的亲属,他停止思绪,起身迎上来人。[@more@]
秦玉瑕
下午的阳光很盛炽,秦玉瑕单手扶把,另一手拿着对讲机,娴熟地骑着摩托,边行边大声呼叫,联系附近的队员到现场维护。董乐和田豫苦着脸跟在后面,她们很不理解,好歹是个中队长,又不是执勤,好好的小车不用,成天骑摩托车,也不嫌腻得慌。[@more@]