基于模板类的链表(转)
基于模板类的链表(转)[@more@]基于模板类的链表 链表的使用,克服了许多基于数组表的局限性,但是传统的使用C描述的链表,使用起来也有一定的局限性,而基于C++模板类构建的链表,方便,快速,能应付很多情况。现在,DarkSpy就将写好的基于模板类的链表帖上来,如果发现有什么错误,请随时更正我哦。^_^// 基于模板类的链表 (C) 2001 CONEOS Software Inc.// by DarkSpy#include template class Node{Node *next;protected:T data;public:Node(){};Node(Node *t, T & d); //初始化模板类void InsertNode(Node *p, T d); //插入一个结点
算法于效率(转)
算法于效率(转)[@more@]算法与效率/* 和以前一样,这里的代码也是从记事本中粘贴来的,代码无法缩进,sorry了 ^_^ */现在我们要写的程序就是将文件内的数字读出来,将char转化为int。在C中,读入的char字符虽然为“12345”但是在int中则仍然为ASCII字符,想要将读入的char转化为int,我们可以写一段程序,采用最简单的方法,莫过于将程序中的数字装入数组,然后按位乘以10并相加,请看以下代码:#include #include #include void main(){char c, *ch; int j=0;ch = new char[80];ifstream i("test", ios::in | ios::binary);if(!i) { cerr
BSD socket入门(转)
BSD socket入门(转)[@more@]大鹰 当你进入 UNIX 的神秘世界后,立刻会发现越来越多的东西难以理解。对于大多数人来说,BSD socket 的概念就是其中一个。这是一个很短的教程来解释他们是什么、他们如何工作并给出一些简单的代码来解释如何使用他们。 类比 (什么是 socket ?) socket 是进行程序间通讯(IPC)的 BSD 方法。这意味着 socket 用来让一个进程和其他的进程互通信息,就象我们用电话来和其他的人交流一样。 用电话来比喻是很恰当的,我们在后面将一直用电话这个概念来描叙 socket 。 装上你的新电话(怎样侦听?) 一个人要能够收到
Bjarne Stroustrup的 C++ 风格与技术常见问题与答案(转)
Bjarne Stroustrup的 C++ 风格与技术常见问题与答案(转)[@more@]请记住这里只是些问题和答案。并非您在一本好书中可以见到的精挑细选的例子和解释 。某些说明可能也没有参考手册和标准中那样精准。关于C++设计的问题您可以去The D esign and Evolution of C++看看。关于C++和其标准库的使用问题可以参看The C++ P rogramming Language。 ---------------------------------------------------------------------------- ---- 为什么我编译起来忒慢? 您的编译器或许有问题。也许太老了,或者安装的有问题,也可能您的计算机已经过时 了。如
UNIX系统编程常用库函数说明(转)
UNIX系统编程常用库函数说明(转)[@more@]UNIX系统为程序员提供了许多子程序,这些子程序可存取各种安全属性.有 些是信息子程序,返回文件属性,实际的和有效的UID,GID等信息.有些子程序可 改变文件属性.UID,GID等有些处理口令文件和小组文件,还有些完成加密和解密. 本文主要讨论有关系统子程序,标准C库子程序的安全,如何写安全的C程序 并从root的角度介绍程序设计(仅能被root调用的子程序). 1.系统子程序 (1)I/O子程序 *creat():建立一个新文件或重写一个暂存文件. 需要两个参数:文件名和存取许可值(8进制方式).如: creat("/usr/pat/read_wri
Project JEDI VCL组件编码标准 (转)
Project JEDI VCL组件编码标准 (转)[@more@]
TNotifyIcon 控件1.01 (转)
TNotifyIcon 控件1.01 (转)[@more@]TNotifyIcon 控件1.01 (Build use Delphi 3.0) 说明:作用: 往通知区加图标,并可显示,隐藏,修改这个图标. 属性(properties): NotifyIcon:TIcon 欲加在通知区的图标 IsVisible:boolean NotifyIcon是否显示的属性 Title:string 通知区图标上的提示(最多64个字符) PopupMenu:TPopupMenu 点击通知区图标弹出的菜单 PopupStyle:TPopupStyle 弹出菜单的方式 TPopupStyle=Set of(Left_Click,Right_Click,Left_dbClick,Right_DbClick);方法(metho
足球战术之Builder篇 (转)
足球战术之Builder篇 (转)[@more@]接上回: .NET/Develop/read_article.ASP?id=11801">http://www.csdn.net/Develop/read_article.asp?id=11801 使用builder模式,来多点进攻,可以避免abstract factory的进球方式已经定死的缺点,因为builder生产的产品差异很大,以至于无需定义一个抽象的父类,再就是很多人会把builder和observer弄混,以为subject就是director,observer就是builder,其实builder模式中的director是虚拟的,并没有该类,实际上只是在builder中有统一的可以看作是director的接口。用builder模式有以下几个好处:1.你可
C# 读取XML文档 (转)
C# 读取XML文档 (转)[@more@]这里介绍一种读取XML文档的方法,如果哪位有更好的方法,可以交流. 示例中用的是 XmlTextReader 函数,每执行 Read() 一次,读取一行. using System.Xml; public KSBMCONFIG ReadConfig(string XmlConfigFile) { KSBMCONFIG _conf = new KSBMCONFIG (); try { // Open an XML file System.Xml.XmlTextReader reader; reader = new System.Xml.XmlTextReader(XmlConfigFile); while ( reader.Read() ) { if((reader.NodeType == XmlNodeType.EndElemen
STL程序设计实践七:尽量定义class形式的Function Object (转)
STL程序设计实践七:尽量定义class形式的Function Object (转)[@more@]STL程序设计实践七:尽量定义class形式的Function objectXML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 袁小凯 华南理工大学计算机研究所北区研发二部 EMail – ccplusplus@21cn.com 前言 在使用STL进行程序设计时,你会经常用到Function Object,尤其是在写一个泛型算法并充许把行为参数化时。Function Object简单点讲分两种:1.函数指针(最简单的Function Object)。2.class形式的Function Object。 1. 函
STL程序设计实践六:自定义类型尽量定义恒等和小于操作符 (转)
STL程序设计实践六:自定义类型尽量定义恒等和小于操作符 (转)[@more@]
The Overview of ECMA C# Language Specialisation (1) (转)
The Overview of ECMA C# Language Specialisation (1) (转)[@more@]The Overview of UCMA C# Language Spesication8. Language Overview (语言概观) 这个条款是扩展的资料。 C# (读音为“c shARP”)是一种简朴、富有朝气的、面向对象和类型安全的编程语言,可以很快地被C/C++程序员所接受。C#的目标是结合快速开发(RAD)语言的高效和C++强大功能。 以下的几节会描述这门语言的基本特点。在后面的章节中将详细地,甚至是精确地介绍该语言的规则及其他。本章将力求清晰简短的含盖所有的内容。使得读者有个初步地印象和
用winspool取得本机安装的打印机的详细信息 (转)
用winspool取得本机安装的打印机的详细信息 (转)[@more@]用winspool取得本机安装的打印机的详细信息 在Delphi 6 Professional version on windows 2000 Professional环境下测试过窗体的名字为"FPrint",有TMemo 和 TCombobox 两个控件 unit unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, TabEdit, Printers, Buttons, WinSpool; type TPrinterInfo = record SeverName : PChar; PrinterN
全透明窗体(效果比较好) (转)
全透明窗体(效果比较好) (转)[@more@]全透明窗体(效果比较好)uses里加上ExtCtrlsprocedure tform1.setformtransparent;var I: Integer; FullRgn, ClientRgn, ControlRgn: THandle; Margin, MarginX, MarginY, X, Y: Integer; W,H,S :Integer; bX,bY :Integer; c :TColor; begin Margin := (Width - ClientWidth) div 2; FullRgn := CreateRectRgn(0, 0, Width, Height); MarginX := Margin; MarginY := Height - Cl
C++命名空间的使用 (转)
C++命名空间的使用 (转)[@more@]c++语言提供一个全局的命名空间namespace,可以避免导致全局命名冲突问题。举一个实例,请注意以下两个头文件: // one.hchar func(char);class String { ... }; // somelib.hclass String { ... }; 如果按照上述方式定义,那么这两个头文件不可能包含在同一个程序中,因为String类会发生冲突。所谓命名空间,是一种将程序库名称封装起来的方法,它就像在各个程序库中立起一道道围墙。比如:// one.hnamespace one{ char func(char); class String { ... };} // somelib.hnamespace SomeLi
防止关闭windows (转)
防止关闭windows (转)[@more@]
TList,AnsiString和DynamicArray的妙用 (转)
TList,AnsiString和DynamicArray的妙用 (转)[@more@] System::AnsiString LabPath=ExtractFilePath("."); TIniFile *LabIni=new TIniFile(LabPath+"LabIni.ini"); void myList::ReadList(AnsiString TS){ System::AnsiString LabPath=ExtractFilePath("."); TIniFile *LabIni=new TIniFile(LabPath+"LabIni.ini"); Form2->AddList(); for(int i=0;i<Form2->LabelList->Count;i++) { TLabel *Lab; Lab=(TLabel *)Form2->LabelList->Items[i]; Lab-&g
哪一种语言最流行?VB,C++,JAVA? (转)
哪一种语言最流行?VB,C++,JAVA? (转)[@more@]Who's Number One?Java, VB, or C++? Three market research firms give widely divergent and contradictory answers.by Jim Fawcette Posted January 9, 2002 For years, the pecking order has been clear: Visual Basic was the most widely used language, Java the fastest growing, and C/C++ the most powerful, but relegated to a shrinking niche of highly skilled programmers. While many people anticipated that the transition to .NET, improved Java IDEs, the move to
Visual Studio .NET Enterprise Architect 中基于 Visio 的数据库建模:第二部分 (转)
Visual Studio .NET Enterprise Architect 中基于 Visio 的数据库建模:第二部分 (转)[@more@]摘要:本文是介绍 microsoft Visual Studio Enterprise Architect 中基于 Visio 的数据库建模组件系列文章中的第二篇。第一部分讨论了如何创建新的对象角色建模 (ORM) 源模型,如何在 fact editor(事实编辑器)中添加句子类型、基本内部约束及示例,如何将事实类型从 business rules editor(业务规则编辑器)拖到绘图窗口中,以及如何保存模型。还说明了如何通过创建数据库模型项目、添加 ORM 源模型、然后构建逻辑模型,将 ORM 模型映射到逻
SVG:可升级矢量图形(1) (转)
SVG:可升级矢量图形(1) (转)[@more@]