自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Ghost

胡言乱语

  • 博客(417)
  • 资源 (143)
  • 收藏
  • 关注

原创 欢迎访问我的新博客

    这几天不知怎么回事,接连好几天居然都不能转帖文章,写几句话也不行,总是报告Text错误,思量着是不是有容量限制,于是申请了一个新的“博客":)

2007-11-23 20:12:00 795

原创 最大公约最小公倍数算法

1.最大公约数:  使用欧几里德算法(辗转相除法),其原理依赖定理:gcd(a,b) = gcd(b,a mod b)  证明:令a>b(类似可证a      必要条件:假设d是a,b的一个公约数,则有d|a,d|b,而r = a - kb,因此d|r。故d是(b,a mod b)的公约数;      充分条件:假设d是(b,a mod b)的公约数,则d|b,d|r,又因a = kb + r,故

2009-01-08 08:46:00 2295

原创 按位异或运算符^

参与运算的两个值,如果两个相应位相同,则结果为0,否则为1。即:0^0=0, 1^0=1, 0^1=1, 1^1=0 例如:10100001^00010001=101100000^0=0,0^1=1 0异或任何数=任何数1^0=1,1^1=0 1异或任何数-任何数取反任何数异或自己=把自己置0(1)按位异或可以用来使某些特定的位翻转,如对数10100001的第2位和第3位翻转,可以将数与000

2009-01-07 15:15:00 83534 6

原创 如何在C#中使用 Win32和其他库

[转载]如何在C#中使用 Win32和其他库作者:Microsoft(郁闷) 这一次我们将深入探讨如何在 C# 中使用 Win32 和其他现有库。   C# 用户经常提出两个问题:“我为什么要另外编写代码来使用内置于 Windows 中的功能?在框架中为什么没有相应的内容可以为我完成这一任务?”当框架小组构建他们的 .NET 部分时,他们评估了为使 .NET 程序员可以使用 Win32 而

2007-12-11 10:45:00 1256

原创 Visual C#中使用线程

使用线程Greg EwingClarity Consulting Inc.2002 年 3 月 摘要:本文论述了各种模式的线程(单线程、单元线程和自由线程)以及每种模式的使用方法。同时,还提供了一个使用线程的 C# 语言代码示例,以帮助您编写使用线程的应用程序。本文还讨论了多线程代码中的一些重要问题。 下载(英文)示例文件。(请注意,在示例文件中,程序员的注释使用的是英文,

2007-12-11 09:43:00 2131 1

原创 经典的讲故事谈.NET委托: 一个C#睡前故事

[转载]经典的讲故事谈.NET委托: 一个C#睡前故事信息来源:pconline英文版原作者:Chris Sells(www.sellsbrothers.com)翻译:袁晓辉(www.farproc.com http://blog.csdn.net/uoyevoli)紧耦合从前,在南方一块奇异的土地上,有个工人名叫彼得,他非常勤奋,对他的老板总是百依百顺。但是他

2007-12-11 09:35:00 865

原创 Visual Studio 2005常用插件

原文:http://dotnet.csdn.net/Special/VS2005Plus/index.htm  Visual Studio 2005 为我们带来了新的编程体验,提供了从需求分析到最终测试整个软件生命开发周期的解决方案。 但是,我们也可以看到一直以来围绕着Visual Studio有许多各种功能的插件,或是为Visual Studio 增加了新的功能或者对原有功能进行了优化,已经

2007-11-20 08:33:00 846

原创 在C#程序中使用系统热键

原文:http://blog.csdn.net/junglesong/archive/2007/08/17/1747822.aspx1.首先引入System.Runtime.InteropServicesusing System.Runtime.InteropServices; 2.在类内部声明两个API函数,它们的位置和类的成员变量等同.[System.Runtime.InteropServ

2007-11-20 08:21:00 758

转载 微软过桥问题的图论解法

微软的过桥问题说的是4个人在晚上过一座小桥,过桥时必须要用到手电筒,只有一枚手电筒,每次最多只可以有两人通过, 4个人的过桥速度分别为1分钟、2分钟、5分钟、10分钟,试问最少需要多长时间4人才可以全部通过小桥?这个问题如果用图论来建模的话,就可以以4个人在桥两端的状态来作为节点来构造一个有向图,如下图所示,以已经过桥了的人的状态作为图的节点,初始时没有人过桥,所以以空表示,第一轮有两个人

2007-11-19 12:47:00 1230

原创 WINDOWS键盘事件的挂钩监控原理

WINDOWS的消息处理机制为了能在应用程序中监控系统的各种事件消息,提供了挂接 各种反调函数(HOOK)的功能。这种挂钩函数(HOOK)类似扩充中断驱动程序,挂钩上 可以挂接多个反调函数构成一个挂接函数链。系统产生的各种消息首先被送到各种 挂接函数,挂接函数根据各自的功能对消息进行监视、修改和控制等,然后交还控 制权或将消息传递给下一个挂接函数以致最终达到窗口函数。WINDOW系统的这种反 调函

2007-11-19 11:25:00 1149

原创 Web Spider提取编码方法总结(二)

4,通过字节流分析检测编码  UTF8判断部分的C#代码:  int utf8_probability(byte[] rawtext)   {   int score = 0;   int i, rawtextlen = 0;   int goodbytes = 0, asciibytes = 0;   // Maybe also use UTF8 Byte Order Mark:  EF

2007-11-17 14:15:00 773

原创 Web Spider提取编码方法总结 (一)

1,通过分析Header提取编码。 WebRequest webRequest = WebRequest.Create(url) ; HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse() ; Regex reg_charset = new Regex(@"charset/b/s*=/s*(?[^""]*)")

2007-11-17 12:43:00 1252

原创 消息钩子函数

Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理。这样,我们就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,

2007-11-16 13:06:00 833

原创 HOOK函数

这种函数是Windows消息处理机制的一部分,通过设置“钩子”,应用程序可以在系统级对所有消息、事件进行过滤,访问在正常情况下无法访问的消息。当然,这么做也是需要付出一定的代价的。由于多了这么一道处理过程,系统性能会受到一定的影响,所以大家在必要的时候才使用“钩子”,并在使用完毕及时将其删除。首先让我们看看HOOK函数是怎么安装、调用和删除的。应用程序通常是调用SetWindowsHookEx()

2007-11-16 08:22:00 994

原创 Window 消息大全使用详解

消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做TMsg,它在Windows单元中是这样声明的:typeTMsg = p

2007-11-15 12:29:00 713

原创 SendMessage函数完全使用手册

首先 我们了解一下Windows的消息机制。Windows是一个消息驱动式系统,Windows消息提供应用程序与应用程序之间,应用程序与Windows系统之间进行通信的手段。举个例子,打开记事本程序,该程序有一个 “文件“菜单。 那么,在运行该程序的时候,如果用户单击“文件菜单“里的“新建“命令, 这个动作将被Windows所捕捉,Windows经过分析得知这个动作应该由我们打开的记事本程序所来处

2007-11-15 08:28:00 1230

原创 C#中的一些技巧

一:构造函数的复用      如果继承自某类可以使用关键字base:    class baseclass    {      .......//其他类成员,方法属性等      string _str;       baseclass(){}   //无参数的构造函数,在此忽略成员函数的初始化      baseclass(string str):this()   /

2007-11-14 21:29:00 723

原创 使用delegate类型设计自定义事件

在C#编程中,除了Method和Property,任何Class都可以有自己的事件(Event)。定义和使用自定义事件的步骤如下:(1)在Class之外定义一个delegate类型,用于确定事件程序的接口 (2)在Class内部,声明一个public event(也可以继承event实现自定义事件)变量,类型为上一步骤定义的delegate类型 (3)在某个Method或者Property内部

2007-11-14 21:14:00 881

转载 if else之现代设计方法

传统思维习惯分析  为什么会业务逻辑层使用if else,其实使用者的目的也是为了重用,但是这是面向过程编程的重用,程序员只看到代码重用,因为他看到if else几种情况下大部分代码都是重复的,只有个别不同,因此使用if else可以避免重复代码,并且认为这是模板Template模式。  他范的错误是:程序员只从代码运行顺序这个方向来看待它的代码,这种思维类似水管或串行电路,水沿着水管流动(代码运

2007-11-13 21:56:00 1424

原创 C++多态技术

C++多态技术 《程序员》2004/02 摘要 本文介绍了C++中的各种多态性,重点阐述了面向对象的动态多态和基于模板的静态多态,并初探两种技术的结合使用。  关键词 函数多态 宏

2007-11-13 20:09:00 858

原创 C#编码标准--编码习惯

 1. 避免将多个类放在一个文件里面。 2. 一个文件应该只有一个命名空间,避免将多个命名空间放在同一个文件里面。3. 一个文件最好不要超过500行的代码(不包括机器产生的代码)。4. 一个方法的代码长度最好不要超过25行。5. 避免方法中有超过5个参数的情况。使用结构来传递多个参数。6. 每行代码不要超过80个字符。7. 不要手工的修改机器产生的代码。a) 如果需

2007-11-12 15:58:00 530

原创 何时使用委托而不使用接口(C# 编程指南)

 何时使用委托而不使用接口(C# 编程指南)(原文) 委托和接口都允许类设计器分离类型声明和实现。给定的接口可由任何类或结构继承和实现;可以为任何类中的方法创建委托,前提是该方法符合委托的方法签名。接口引用或委托可由不了解实现该接口或委托方法的类的对象使用。既然存在这些相似性,那么类设计器何时应使用委托,何时又该使用接口呢?在以下情况中使用委托:

2007-11-12 14:28:00 795

原创 Martin Fowler:分析模式-数量模式

Quantity数量Represent dimensioned values with both their amount and their unit 由数字和相关单位组成,表示有单位的值There are many cases where we want computers to represent dimensioned quantities: values such

2007-11-12 08:41:00 2396

原创 如何最大限度提高.NET的性能 (续)

其实随着硬件的发展,现在硬件的速度已经远远满足大多数人的的需要了,甚至有些人提出算法在现在软件开发中越来越不起作用了。记得以前看过麻省的数据结构视频,讲课的教授就问过一个问题(我记得不大清楚了,他的大概意思就是这样):既然算法现在变得不重要了,为什么我们还要在这里研究呢?他给的答案就是“SPEED” ,我们追求速度就像赛车手追求速度一样!      现在很多系统的开发都不会把速度放在第一位,其他如

2007-11-10 18:34:00 660

原创 如何最大限度提高.NET的性能

1)避免使用ArrayList。     因为任何对象添加到ArrayList都要封箱为System.Object类型,从ArrayList取出数据时,要拆箱回实际的类型。建议使用自定义的集合类型代替ArrayList。.net 2.0提供了一个新的类型,叫泛型,这是一个强类型,使用泛型集合就可以避免了封箱和拆箱的发生,提高了性能。2)使用HashTale代替其他字典集合类型(如StringD

2007-11-10 18:33:00 1165

原创 WebBrowser控件应用:弹出新窗体和关闭窗口

Open新页面要处理的:1:>;      2: onclick=’window.open’ ; 3:引用js文件 ;4:ClientScript.RegisterStartupScript();等。5:还有要实现在打开的页面里能用window.opener对象Close要处理的:1:onclick=’window.close ; 2:引用js文件 ;3:Clien

2007-11-10 17:55:00 3412 1

原创 C#委托,事件

什么是委托?     委托和事件这两个概念是完全配合的。委托仅仅是函数指针,那就是说,它能够引用函数,通过传递地址的机制完成。委托是一个类,当你对它实例化时,要提供一个引用函数,将其作为它构造函数的参数。   每一个委托都有自己的签名,例如:Delegate int SomeDelegate(string s, bool b);是一个委托申明,在这里,提及的签名,就是说SomeDelega

2007-11-09 11:29:00 685

原创 数组(array)与ArrayList的主要区别

1)精辟阐述:可以将ArrayList想象成一种“会自动扩增容量的array”。2)array([]):最高效;但是其容量固定且无法动态改变;ArrayList:容量可动态增长;但牺牲效率;3)建议:基于效率和类型检验,应尽可能使用array,无法确定数组大小时才使用ArrayList!不过当你试着解决更一般化的问题时,array的功能就可能过于受限。4)java中一切皆对象,array也是对象。

2007-11-09 08:52:00 1400

原创 C++类模板的三种特化

C++类模板的三种特化 By SmartPtr(http://www.cppblog.com/SmartPtr/)  说起C++的模板及模板特化, 相信很多人都很熟悉 ,但是说到模板特化的几种类型,相信了解的人就不是很多。我这里归纳了针对一个模板参数的类模板特化的几种类型, 一是特化为绝对类型; 二是特化为引用,指针类型;三是特化为另外一个类模板。 这里用一个简单的例子来说明这三种情况:

2007-11-08 15:39:00 15792

原创 Windows消息机制要点

Windows消息机制要点 By SmartPtr(http://www.cppblog.com/SmartPtr/) 1. 窗口过程 每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ID),和两个消息参数(wParam, lParam), 当窗口收到消息时系统就会调用此窗口过程来处理消息。

2007-11-08 15:33:00 1212

原创 ACE的内存分配介绍

一、内存分配器相关ACE_Allocator基类ACE_New_Allocator : public ACE_Allocator传统的new和delete的动态内存分配器,主要方法:malloc 分配一定大小的内存,实质就是new char[nbytes];calloc 同上,但带内存初始化free 释放指定的内存块,实质就是delete[] ptr;ACE_Static_Allocato

2007-11-08 15:23:00 1389

原创 使用反射动态调用类成员

使用反射动态调用类成员,需要Type类的一个方法:InvokeMember。对该方法的声明如下(摘抄于MSDN):public object InvokeMember(   string name,   BindingFlags invokeAttr,   Binder binder,   object target,   object[] args);参数na

2007-11-07 15:42:00 538

原创 国外C#开源项目

AspectSharp - Aspect# (pronunced as AspectSharp) is a free AOP ( Aspect Oriented Programming ) framework for the .NET Framework, it uses Dynamic Proxies and XML configuration files as basis.

2007-11-07 15:12:00 924

原创 DotNet之优秀工具

最佳 .NET 图书暨培训软件 大奖获得者: Advanced .NET Remoting, Apress (www.apress.com) 亚军: Applied Microsoft .NET Framework Programming, Microsoft Press (www.microsoft.com)季军: Programming Windows with C#, Microsoft P

2007-11-07 14:45:00 565

原创 C++编程人员容易犯的10个C#错误

我们知道,C#的语法与C++非常相似,实现从C++向C#的转变,其困难不在于语言本身,而在于熟悉.NET的可管理环境和对.NET框架的理解。尽管C#与C++在语法上的变化是很小的,几乎不会对我们有什么影响,但有些变化却足以使一些粗心的C++编程人员时刻铭记在心。在本篇文章中我们将讨论C++编程人员最容易犯的十个错误。陷阱1: 没有明确的结束方法几乎可以完全肯定地说,对于大多数C++编程人员

2007-11-07 13:13:00 524

原创 三种操作数据库的途径

操作数据库可以分这么三种,第一种,直接写硬SQL代码,不要参数,第二种,直接写硬代码,要参数,第三种,调用存储过程。我们以一个登录模块为例,现在页面有两文本框,一按纽,实现验证用户名密码的功能。第一种方法主要代码如下: SqlConnection conn =new  SqlConnection   

2007-11-07 12:59:00 723

原创 const和static readonly的区别

const1.     在编译期间解析的常量2.     必须在声明就初始化3.     既可用来修饰类中的成员,也可修饰函数体内的局部变量。static readonly1.     在运行期间解析的常量,2.     既可以在声明时初始化也可以在构造器中初始化。3.     只可以用于修饰类中的成员例子:1.      static readonly MyC

2007-11-05 15:02:00 550

原创 property和attribute的区别

对于property和attribute这两个名词都叫“属性”的问题,来源于国内it书籍翻译界的疏忽。其实它们来源于两个不同的领域,attribute属于OOA/OOD的概念,而property属于编程语言中的概念。下面我们来说明它们的异同。AttributeAttributes是Microsoft .NET Framework文件的元数据,可以用来向运行时描述你的代码,或者在

2007-11-05 13:05:00 1190

原创 正则表达式--递归匹配与非贪婪匹配

1. 表达式的递归匹配    有时候,我们需要用正则表达式来分析一个计算式中的括号配对情况。比如,使用表达式 "/( [^)]* /)" 或者 "/( .*? /)" 可以匹配一对小括号。但是如果括号 内还嵌有一层括号的话 ,如 "( ( ) )",则这种写法将不能够匹配正确,得到的结果是 "( ( )" 。类似情况的还有 HTML 中支持嵌套的标签如 " " 等。本节将要讨论的是,想办法把有

2007-11-03 13:57:00 1119

原创 C#中正则表达式的分组构造

.NET Framework 开发人员指南分组构造原文地址 分组构造描述了正则表达式的子表达式,通常用于捕获输入字符串的子字符串。下表描述了正则表达式分组构造。 分组构造 说明

2007-11-03 12:57:00 1949

《边缘计算参考架构3.0》白皮书_.pdf

边缘计算参考架构3.0

2021-09-27

MFC Windows 程序设计(第2版)3

MFC Windows 程序设计(第2版)3

2007-06-30

MFC Windows 程序设计(第2版)2

MFC Windows 程序设计(第2版)2

2007-06-30

MFC+Windows+程序设计(第2版)1

MFC+Windows+程序设计(第2版)1

2007-06-30

C#字符串与正则表达式参考手册.part6

C#字符串与正则表达式参考手册.part6

2007-06-25

C#字符串与正则表达式参考手册.part5

C#字符串与正则表达式参考手册.part5

2007-06-25

C#字符串与正则表达式参考手册.part4

C#字符串与正则表达式参考手册.part4

2007-06-25

C#字符串与正则表达式参考手册.part3

C#字符串与正则表达式参考手册.part3

2007-06-25

C#字符串与正则表达式参考手册.part2

C#字符串与正则表达式参考手册.part2

2007-06-25

C#字符串与正则表达式参考手册.part1

C#字符串与正则表达式参考手册.part1

2007-06-25

Programming+Windows+with+MFC+(2nd).part3

Programming+Windows+with+MFC+(2nd).part3

2007-06-25

Programming+Windows+with+MFC+(2nd).part2

Programming+Windows+with+MFC+(2nd).part2

2007-06-25

Programming+Windows+with+MFC+(2nd).part1

Programming+Windows+with+MFC+(2nd).part1

2007-06-25

深度探索C++对象模型.part6

深度探索C++对象模型.part6

2007-06-19

深度探索C++对象模型.part5

深度探索C++对象模型.part5

2007-06-19

深度探索C++对象模型.part4

深度探索C++对象模型.part4

2007-06-19

深度探索C++对象模型.part3

深度探索C++对象模型.part3

2007-06-19

深度探索C++对象模型.part2

深度探索C++对象模型.part2

2007-06-19

深度探索C%2B%2B对象模型.part1

深度探索C%2B%2B对象模型.part1

2007-06-19

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.zip

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.zip

2007-06-19

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z05

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z05

2007-06-19

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z06

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z06

2007-06-19

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z04

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z04

2007-06-19

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z03

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z03

2007-06-19

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z02

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z02

2007-06-19

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z01

Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z01

2007-06-19

数据库系统设计(第七版).part13

数据库系统设计(第七版).part13

2007-06-19

数据库系统设计(第七版).part12

数据库系统设计(第七版).part12

2007-06-19

数据库系统设计(第七版).part11

数据库系统设计(第七版).part11

2007-06-19

数据库系统设计(第七版).part10

数据库系统设计(第七版).part10

2007-06-19

数据库系统设计(第七版).part09

数据库系统设计(第七版).part09

2007-06-19

数据库系统设计(第七版).part08

数据库系统设计(第七版).part08

2007-06-19

数据库系统设计(第七版).part07

数据库系统设计(第七版).part07

2007-06-19

数据库系统设计(第七版).part06

数据库系统设计(第七版).part06

2007-06-19

数据库系统设计(第七版).part05

数据库系统设计(第七版).part05

2007-06-19

数据库系统设计(第七版).part04

数据库系统设计(第七版).part04

2007-06-19

数据库系统设计(第七版).part03

数据库系统设计(第七版).part03

2007-06-19

数据库系统设计(第七版).part02

数据库系统设计(第七版).part02

2007-06-19

数据库系统设计(第七版).part01

数据库系统设计(第七版).part01

2007-06-19

数据库系统概念(第四版).part25

数据库系统概念(第四版).part25

2007-06-19

空空如也

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

TA关注的人

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