行内技术
Visual C++ MFC 中常用宏的含义
AND_CATCHAND_CATCHAND_CATCH(exception_class,exception_object_point_name)说明:定义一个代码块,它用于获取废除当前TRY块中的附加异常类型。使用CATCH宏以获得一个异常类型,然后使用AND_CATCH宏获得随后的异常处理代码可以访问异常对象(若合适的话)已得到关于异常的特别原因的更多消息。在AND_CATCH块中调用THROW_LAST宏以便把处理过程移到下个外部异常框架。AND_CATCH可标记CATCH或AND_CATCH块的末尾。注释:AND_CATCH块被定义成为一个C++作用域(由花括号来描述...
2013-3-5354
算术编码用c++的实现
算术编码在图象数据压缩标准(如jpeg,jbig)中扮演了重要的角色。在算术编码中,消息用0到1之间的实数进行编码。算术编码用到了两个基本的参数:符号的概率和它的编码间隔。信源符号的概率决定压缩编码的效率,也决定编码过程中信源符号的间隔,而这些间隔包含在0到1之间。编码过程中的间隔决定了符号压缩后的输出。算术编码需要输入的是符号,各个符号的概率还有需要编码的符号序列,根据概率可以算出初始编码间隔,先设几个变量在后面可用:High——当前编码的上限,Low——当前编码的下限,high——中间...
2013-3-5496
在.NET中使用域对象持续模式
  域应用程序对象通常是整个应用程序的中心,被很多子系统使用。它们表现了核心的数据和业务验证规则;因此,良好的域对象设计对于牢固的、高性能的和灵活的应用程序非常关键。  当我们开发那些使用了关系数据库的面向对象应用程序的时候,建立与数据库设计一致的域对象设计可以使应用程序更容易理解,这是因为在典型情况下,域对象表现了现实的"实体"和它们彼此之间的关系。因此,在很多情形下,域对象都被"映射"为关系数据库表和表间关系。但是,这种映射非常容易出错,从而以不合需要的域对象设计为终结。域对象的良好设计要求开发者对面向对象和关系的基本原理有深刻的理解。...
2013-3-5448
用ASP编程实现网络内容快速查找
  有一天我突发奇想,要是我每到一个网站,那里都能立刻调出我需要看的信息,那岂非美妙得很。接下来我想更深入地考虑这个问题,坐到椅子上拿一支铅笔,却不知道自己写什么。如此一来,我还是得着手对付代码它们。我的朋友开了一个小型站点,原本是我设计的。这是个检验我想法的好平台。所以我写出代码,上传了文件。真叫人兴奋,程序工作起来煞是圆满,同时也证明我的想法的确不错。以前看过一些网络使用者倾向报告,其中有一个规律给我印象很深。说是大多数用户如果在三次点击内无法找到自己需要的内容,就会立刻离开该站点。我的代码就可以针对这个问题,保险用户只要点一次鼠标就找到目标。在我的例子里,假设有个用...
2013-3-5503
在MFC下如何定义全局变量和全局函数
  用MFC制作的工程由很多文件构成,它不能象一般C++程序那样随意在类外定义全局变量,在这里要想定义能被工程内多个文件共享的全局变量和函数必须用一些特殊方法才行。实际上有多种方法可以实现,这里只介绍两种方法。  一、在应用程序类中定义  用MFC生成的工程中都有一个名为CxxxApp的类,它派生于CWinApp类。这个类主要进行程序的初始化,生成文档、视图对象等工作。我们可以把需要全局访问的变量和函数定义为这个类的成员变量和成员函数,就可以实现全局访问了。  从严格意义上讲,这种变量和函数并不是全局的,因为它仍然只是类中的成员,只是由于我们很容易获得CxxxApp类的指针,...
2013-3-5371
使用MFC在应用程序中嵌入MS Word
  摘要:这篇文章着重讲述了如何使用MFC将MicrosoftWord嵌入到应用程序中的方法。对在VC下使用类型库和COM技术也做了简要阐述。  关键字:VC++、MFC、COM、自动化  一、引言  MicrosoftOffice办公套件以其功能强大、方便实用而被广泛使用。我们可以使用自动化作为Word用以把其功能显露给其他应用的方式,采用这种方式可以尽可能少的占用自动化客户的资源,并且不需要被访问对象的类型信息就可以进行调用。  二、创建工程  以下是创建这个MFC应用程序的步骤:  (一)使用AppWizard创建一个新的MFCAppWizard(EXE)工...
2013-3-5493
Delphi中利用钩子实现QQ聊天窗口的修改
  有人曾为公司不让用QQ、MSN等聊天工具而烦恼吗?看了下面的小程序你就会打消这种看法了。  当初公司做校园一卡通的项目时,里面的机房客户端需要用到系统的低级键盘钩子WH_KEYBOARD_LL,这也是我第一次接触到Windows中的Hook,因为WH_KEYBOARD_LL和其他钩子不一样,在Delphi的Windows帮助以及windows.pas文件中都没有定义,但microsoft的msdn中确有WH_KEYBOARD_LL的介绍,所以一路解决后就对Windows的系统钩子产生了兴趣。之后相继做过鼠标钩子WH_MOUSE、低级鼠标钩子WH_MOUSE_LL以及消息钩子WH_...
2013-3-5457
PHP 5.0对象模型深度探索之定义一个类
  当你声明一个类,你需要列出对象应有的所有变量和所有函数—被称为属性和方法。列表1中显示了一个类的构成.注意在大括号({})内你只能声明变量或者函数。列表2中显示了如何在一个类中定义三个属性和两个方法。  列表1classNameextendsAnotherClass{ AccessVariableDeclaration AccessFunctionDeclaration}  列表2//定义一个跟踪用户的类classUser{ //属性 public$name; private$password,$lastLogin; //...
2013-3-5369
C++中用函数模板实现和优化抽象操作
本文介绍函数模板的概念、用途以及如何创建函数模板和函数模板的使用方法......  在创建完成抽象操作的函数时,如:拷贝,反转和排序,你必须定义多个版本以便能处理每一种数据类型。以max()函数为例,它返回两个参数中的较大者:doublemax(doublefirst,doublesecond);complexmax(complexfirst,complexsecond);datemax(datefirst,datesecond);//..该函数的其它版本  尽管这个函数针对不同的数据类型其实现都是一样的,但程序员必须为...
2013-3-5407
汇总c#.net常用函数和方法集
1、DateTime数字型System.DateTimecurrentTime=newSystem.DateTime();1.1取当前年月日时分秒currentTime=System.DateTime.Now;1.2取当前年int年=currentTime.Year;1.3取当前月int月=currentTime.Month;1.4取当前日int日=currentTime.Day;1.5取当前时int时=currentTime.Hour;1.6取当前分int分=currentTime.Minute;1.7取当前秒int秒=currentTime.Second...
2013-3-5347
一般线性链表类的C++实现
以下的C++类LinkList实现了线性链表的一般操作。可以直接在其他的程序中直接建立它的对象,其中线性表中的数据在此为整型,具体应用的时候可以适当的修改,并可以在此基础上继续封装特定的功能。头文件:LinkList.htypedefstructLNode{intdata;structLNode*next;}LNode,*pLinkList;classLinkList{private:pLinkListm_pList;intm_listLength;public:LinkList();~LinkList();boolInitList();boolDest...
2013-3-5334
VC++中进程与多进程管理的方法
  进程是当前操作系统下一个被加载到内存的、正在运行的应用程序的实例。每一个进程都是由内核对象和地址空间所组成的,内核对象可以让系统在其内存放有关进程的统计信息并使系统能够以此来管理进程,而地址空间则包括了所有程序模块的代码和数据以及线程堆栈、堆分配空间等动态分配的空间。进程仅仅是一个存在,是不能独自完成任何操作的,必须拥有至少一个在其环境下运行的线程,并由其负责执行在进程地址空间内的代码。在进程启动的同时即同时启动了一个线程,该线程被称作主线程或是执行线程,由此线程可以继续创建子线程。如果主线程退出,那么进程也就没有存在的可能了,系统将自动撤消该进程并完成对其地址空间的释放。  加...
2013-3-5446
C#开发的两个原则的深入讨论
  使用属性,避免将数据成员直接暴露给外界  学习研究.NET的早期,经常碰到一些学习C#/.NET的朋友问,要属性这种华而不实的东西做什么?后来做项目时也时常接到team里的人的抱怨反馈,为什么不直接放一个public字段?如:classCard{ publicstringName;}  而非要做一个private字段+public属性?classCard{ privatestringname; publicstringName {  get{returnthis.name;}  set{this.name=value;} }}  我记得在早期...
2013-3-5334
C++中确定基类有虚析构函数
有时,一个类想跟踪它有多少个对象存在。一个简单的方法是创建一个静态类成员来统计对象的个数。这个成员被初始化为0,在构造函数里加1,析构函数里减1。(条款m26里说明了如何把这种方法封装起来以便很容易地添加到任何类中,“myarticleoncountingobjects”提供了对这个技术的另外一些改进)设想在一个军事应用程序里,有一个表示敌人目标的类:classenemytarget{public:enemytarget(){++numtargets;}enemytarget(c...
2013-3-5455
C++的编写约瑟夫(josephus)环函数
约瑟夫(josephus)环是这样的:假设有n个小孩坐成一个环,假如从第一个小孩开始数,如果数到m个小孩,则该小该离开,问最后留下的小孩是第几个小孩?例如:总共有6个小孩,围成一圈,从第一个小孩开始,每次数2个小孩,则游戏情况如下:小孩序号:1,2,3,4,5,6离开小孩序号:2,4,6,3,1最后获胜小孩序号:5这样的问题,我可以先考虑输入的内容有哪些?输出内容有哪些?&n...
2013-3-5401
C标准中一些预定义的宏
C标准中指定了一些预定义的宏,对于编程经常会用到。下面这个表中就是一些常常用到的预定义宏。__DATE__进行预处理的日期(“Mmmddyyyy”形式的字符串文字)__FILE__代表当前源代码文件名的字符串文字__LINE__代表当前源代码中的行号的整数常量__TIME__源文件编译时间,格式微“hh:mm:ss”__func__当前所在函数名对于__FILE__,__LINE__,__func__这样的宏,在调试程序时...
2013-3-5526
Visual C++6.0 API函数操作技巧集
我们在编制应用软件的过程中,常常需要对光标和鼠标操作,本人在文中介绍了Windows系统中有关实现对鼠标和光标进行操作的API函数,并给出了在VisualC6.0++中利用所介绍的API函数实现对鼠标和光标的操作的代码。  一、隐藏和显示光标  函数:intShowCursor(BOOLbShow);  参数bshow,为布尔型,bShow的值为False时隐藏光标,为True时显示光标;该函数的返回值为整型,为鼠标隐藏或显示的指数器;返回值大于等于0时显示光标,否则隐藏鼠标;如果安装了鼠标初值为0。  实例:  在基于...
2013-3-5396
C++基础:怎样判断某一文件是否存在
很简单的一种办法:#include<iostream>#include<fstream>usingnamespacestd;#defineFILENAME"stat.dat"intmain(){fstream_file;_file.open(FILENAME,ios::in);if(!_file)&...
2013-3-5451
用VB制作注册软件的方法
我自己制作的一个注册软件,希望能给大家带来帮助PrivateDeclareFunctionGetWindowLib"user32"(ByValhwndAsLong,ByValwCmdAsLong)AsLongPrivateDeclareFunctionGetVolumeInformationLib"kernel32"Alias"GetVolumeInformationA"(ByVallpRootPathNameAsString,ByVallpVolumeNameBufferAsString,ByValnVolumeNameS...
2013-3-5414
VB程序中数据库的图片处理的解决方法
在数据库中,我们经常遇到需要处理图片的情况。例如,如果我们在产品数据库中存储了产品的照片,那将给顾客以直接的感官认识。在数据库中,图片的特殊性有两点:1、图片所占存储空间常常是比较大的;2、图片的处理常常需要外部的程序。在标准SQL语言中,提供了BLOB和CLOB数据类型来存储巨大的...
2013-3-5516