从另一个考虑来看代码的风格 (转)
从另一个考虑来看代码的风格 (转)[@more@] 从另一个考虑来看代码的风格XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 相信大家对代码的风格都有自己的观点,都有自己的风格。但大家心目中最完美的一定是简洁,易读,高效率的。 但有时效率和简洁性、可读性是不可兼顾的。这就要看开发的目的是什么了。对时间要求不高的当然要注重简洁和可读性,而另一些要求速度快,或体积小的程序则可能更强调效率。 我想现今随着计算机存储器的飞速发展程序的体积越来越显得不重要了。记得当年我在大一时所
CreateFileMapping的MSDN翻译和使用心得 (转)
CreateFileMapping的MSDN翻译和使用心得 (转)[@more@]测试创建和打开文件映射的时候老是得到"句柄无效"的错误, 仔细看了MSDN以后才发觉是函数认识不透, 这里把相关的解释翻译出来HANDLE CreateFileMapping( HANDLE hFile, //物理文件句柄 LPSECURITY_ATTRIBUTES lpAttributes, //安全设置 Dword flProtect, //保护设置 DWORD dwMaximumSizeHigh, //高位文件大小 DWORD dwMaximumSizeLow, //低位文件大小 LPCTSTR lpName //共享内存名称);1) 物理文件句柄 任何可以获得的物理
关于字符串的几个有用函数 (转)
关于字符串的几个有用函数 (转)[@more@]1、测试字符串长度(中英文) function strLen(s){ var i,str1,str2,str3,nLen; str1 = s.value; nLen = 0; for(i=1;i<=str1.length;i++) { str2=str1.substring(i-1,i) str3=escape(str2); if(str3.length>3) { nLen = nLen + 2; } else { nLen = nLen + 1; } } return nLen;}2、替换 function Replace(s1,s2,s3){ var len1 , len2 , i; var str1 , str2 ; str1 = s1; len1 =
Vertex Shader & Pixel Shader 介绍 (转)
Vertex Shader & Pixel Shader 介绍 (转)[@more@] Vertex Shader & Pixel Shader 介绍 XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 1. 固定功能的图形处理流水线(fixed function graphics pipeline) 能够实现Vertex Shader和Pixel Shader的显卡的图形处理流水线被称作为是可编程的,相对而言,在此之前的图形处理流水线被称作为是固定功能(fixed function),下面是OpenGL图形处理的一个简图: 完整的OpenGL图形处理流水线为称作为OpenGL机器(Ope
对DBGrid 的巧妙用法实现查询 (转)
对DBGrid 的巧妙用法实现查询 (转)[@more@]void __fastcall TForm1::dbGrid2DblClick(Tobject *Sender){ // INGOODS‘ 是进货表 int sumno=0,i; INGOODS->Edit();file://----------------------------------------------------- AnsiString thisgoodsname; DBGrid2->selectedIndex=1; thisgoodsname=DBGrid2->SelectedField->Value; file://ShowMessage(thisgoodsname);//file://----------------------------------------------------- Query2->Close(); Query
提取win98上网密码 (转)
提取win98上网密码 (转)[@more@]unit Unit1;interfaceuses windows, SysUtils, Classes, Forms, shellapi, Controls, StdCtrls;type TForm1 = class(TForm) GroupBox1: TGroupBox; ListBox: TListBox; Label1: TLabel; Label2: TLabel; procedure Label1Click(Sender: Tobject); procedure FormShow(Sender: TObject); private { Private declarations } public hMPR: THandle; end;var F
利用双计算机调试游戏程序 (转)
利用双计算机调试游戏程序 (转)[@more@] 在游戏编程时,调试程序是很困难的事情,特别是全屏模式,总是无法切换到VC的ide环境,以前我一般是利用BltFast代替Flip以保证GDI Surface始终在前,但效果不是太好,前一段时间我在VC中发现一个宝贝,可以利用两台计算机调试程序,一台运行程序,另一台运行VC来调试,再加上TRACE输出,真是爽的不得了,下面是我的做法: XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" />1. 保证两台电脑是联网的,最好是都摆在你的面前,不然的话你肯定要跑来跑去 了。还要
面向模式构建系统架构 (转)
面向模式构建系统架构 (转)[@more@]转自IBM developerWorks,想和大家探讨一下有关模式和系统架构方面的内容,欢迎讨论 面向模式构建系统架构 邓辉、孙鸣 架构是一个软件系统中的核心元素,是系统中最难改变的部分,也是构建软件系统中其他部分所依赖的基础,因此系统架构的好坏会从根本上决定基于这个架构所构建的软件系统的质量。系统架构的构建一直是软件开发过程中的一项重要工作,同时也是一项很困难的工作,即便对于很有经验的系统架构师也是如此。但是,模式以及模式语言的提出给出了一条构建系统架构的有效途径,本文将对此进行
delphi中的时间操作技术(2) (转)
delphi中的时间操作技术(2) (转)[@more@]各种时间类型之间的转换函数XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> DateTimeToFileDate函数: 定义:DateTimeToFileDate(DateTime: TDateTime): Integer; 作用: 将一个TDateTime类型的时间转化为Dos环境中的时间,Dos环境下对时间的访问方法和VCL中的TdateTime类型不一样,在进行文件操作时,为了保持时间的一致性,需要使用DateTimeToFileDate函数进行转化,返回的Integer的值就是Dos下的用于描述时间的值。 DateTimeToSystemTime 过程: 定义
delphi中的时间操作技术(1) (转)
delphi中的时间操作技术(1) (转)[@more@]在编写应用程序时,我们需要经常与时间和日期打交道,因此经常需要一些对时间的控制技术,在Delphi中,提供了一整套对日期和时间的操作函数,在此,我将详细介绍一下在Delphi中的时间操作技术,希望能对大家有所帮助。XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> Delphi中的用于表示时间的类型: 首先,看一看在delphi中用于描述时间的几种数据结构,对时间的操作,其实就是对这些结构的操作。 TDateTime类型: Delphi中最常用的表示日期时间的数据类型TD
JSP自学笔记 (转)
JSP自学笔记 (转)[@more@]JSP注释 <%-- comments --%> 注意<%-- --%>之间的 --%>应写为 --%> JSP声明 <%! 声明语句序列 %> 类和变量的说明可以在<%! %>中间声明,也可以直接声明一个方法 <%! public void foo(){ out.println("the foo function"); } %> JSP表达式 <%=Java表达式%> 用来直接在页面中显示该表达式的值,效果与 <% 一致 JSP程序段 <% Java代码%> 在JSP声明中被声明的变量在所有运行这个JSP程序代码的线程中
《Windows 程序设计》学习笔记(四) (转)
《Windows 程序设计》学习笔记(四) (转)[@more@]第四章 输出文本 需要非常清楚一个概念----窗口的客户区(Client Area):整个应用程序窗口中未被标题栏,窗口边框以及可选的菜单栏,工具栏,状态栏和滚动条占据的部分。 在windows中,我们能在窗口的客户区绘制文本和图形,而当窗口的客户区被变动时,Windows不能保留原来绘制的文本和图形,如果要恢复原来的文本和图形就必须进行重新绘制,这个过程叫刷新。如果当Windows向窗口过程发送WM_PAINT消息,窗口的客户区就需要‘刷新’。 Windows什么时候向窗口过程发送WM
Oracle9i 資料庫管理實務講座(一) (转)
Oracle9i 資料庫管理實務講座(一) (转)[@more@]ORACLE 9i 資料庫管理實務講座(一)如何安裝Oracle 9i Enterprise Edition for Linux 原文出處 : 2001年11月Linuxer雜誌作者: 何致億下載 PDF 檔 前言 Oracle 9i資料庫系統可算是近幾年來Oracle公司一項殺手級的產品,其功能與應用面之廣,連研究Oracle多年的我在第一次接觸到產品規格時也不禁嚇了一跳!突然間一大堆的技術文件與白皮書排山倒海而來,一時之間還不知道該從何著手。所以我花了幾個月的時間在各種平台上進行環境測試以及新功能研究,並將手邊的資料大致整理了一下,希望在未
C语言程序书写规范 (转)
C语言程序书写规范 (转)[@more@]我做C语言底层开发,积累了一些代码书写的经验供大家参考: 1.C语言书写规范 1.1符号命名规则1.1.1符号名包括模块名、常量名、标号名、子程序名等。这些名字应该能反映它所代表的实际东西,具有一定的意义,使其能够见名知义,有助于对程序功能的理解。命名采用匈牙利命名法。规则如下: (1)所有宏定义、枚举常数和const变量,用大写字母命名。在复合词里用下划线隔开每个词。 (2)复合词中每个单词的第一个字母大写。除了规则5.1.1.1以外,避免使用下划线。 (3)类、类型定义和枚举型名
MYSQL的操作类(修改后的新版本) (转)
MYSQL的操作类(修改后的新版本) (转)[@more@] class Mysqldb { //MYSQL数据库操作类 //作者:熊毅 //版本:2.0(发行版) //可以自由转载,修改请通知我Mailto:scxy78@yeah.NET">scxy78@yeah.net //转载请保留以上声明 //使用说明: //该类完全按照ADO的习惯书写的,用过ASP的人都觉得ASP连接数据库比PHP好用(这是我的感觉), //但PHP得一个一个api地写,挺累,该类做了完全的封装 //创建类的实例时可以指定一个数
足球战术->中场发动机之mediator篇 (转)
足球战术->中场发动机之mediator篇 (转)[@more@]接上回:.NET/develop/read_article.ASP?id=10848">http://www.csdn.net/develop/read_article.asp?id=10848 上次忘了最古老的足球战术->中场发动机战术,也就是mediator模式,在这个模式中,所有的中场组织都由中场发动机(mediator)来完成。对其他队员(colleague)的要求降低,而对中场发动机的要求大大提高。传球方式分两种,第一种由普通的observer模式得来:将中场发动机作为observer,其他队员作为subject,由中场发动机将其他队员的传球再传给其他人;第二种由其他队员把自己作为
给 perl hacker 们看的 (转)
给 perl hacker 们看的 (转)[@more@]究竟有多少种打印出 just another perl hacker 的方法呢? 看看就知道了 :-) %%#JoeCamel on http://www.perlmonks.com/#note: requires Perl5.6.0 or better#!/usr/bin/perl -wuse strict; # A tribute to one of the greatest films of all time.my(%primate, $monolith, $evolution, $contact); $_='primate-> throw ( "Bone" ) ; goto; $$monolith ; bless %primate;$evolution =~m/?+*/; #/*+?/m~= *humanintellect ++;
singleton模式的一种变体:double-checked locking (转)
singleton模式的一种变体:double-checked locking (转)[@more@]singleton模式的一种变体:double-checked locking在单线程下,我们的singleton多半是这样(Java):class Singleton{ private Singleton(){ //... }; private static Singleton instance = null; public static Singleton getInstance { if ( instance == null ) instance = new Singleton(); return instance; }; //... }但是在多线程环境下,这里有个问题:如果一个线程先检查
谴责一些个人网页制作者 (转)
谴责一些个人网页制作者 (转)[@more@] 现在有一些个人网页的制作者很不道德,他们在你浏览他们的网页时常常在你的计算机上作一些手脚。比如设置你的默认主页,改变IE的标题,修改一些注册表信息。有一些更恶劣,在你的计算机上动完手脚后,为防止你使用注册表编辑器(regedit.exe)把设置修改回去,还禁止你使用注册表编辑器(regedit.exe)。 虽然这些小技俩对熟悉计算机的用户来说只是一件小麻烦;但还是对广大计算机用户造成了不便,尤其是一些计算机初学者。 这种人应受到大家的谴责,为了增加个人网页的流量竟使用
More Effective C++ 条款15 (转)
More Effective C++ 条款15 (转)[@more@] 条款15:了解异常处理的系统开销XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 为了在运行时处理异常,程序要记录大量的信息。无论执行到什么地方,程序都必须能够识别出如果在此处抛出异常的话,将要被释放哪一个对象;程序必须知道每一个入口点,以便从try块中退出;对于每一个try块,他们都必须跟踪与其相关的catch子句以及这些catch子句能够捕获的异常类型。这种信息的记录不是没有代价的。确保程序满足异常规格不需要运行时的比较(runtime compa