回调函数

调用(calling)机制从汇编时代起已经大量使用:准备一段现成的代码,调用者可以随时跳转至此段代码的起始地址,执行完后再返回跳转时的后续地址。 CPU为此准备了现成的调用指令,调用时可以压栈保护现场,调用结束后从堆栈中弹出现场地址,以便自动返回。借堆栈保护现场真是一项绝妙的发明,它使调用者和被调者可以互不相识,于是才有了后来的函数和构件,使吾辈编程者如此轻松愉快。若评选对人类影响最大之发明,在火与车轮之后,笔者当推压栈调用。 话虽这样说,此调用机制并非完美。回调函数就是一例。函数之类本是为调用者准备的美餐,其烹制者应对食客了如指掌,但实情并非如此。例...
.NET 技术 | 2007-09-27 22:43 | 阅读 1412 次 | 评论 0 条

block(块元素)、inline(内联元素)的差别是什么?

block(块元素)、inline(内联元素)的差别是什么? 我们首先要了解,所有的html元素,都要么是block(块元素)、要么是inline(内联元素)。下面了解一下block、inline各自的特点:  block元素的特点: 引用内容   总是在新行上开始;  高度,行高以及顶和底边距都可控制;  宽度缺省是它的容器的100%,除非设定一个宽度。 inline元素的特点: 引用内容   和其他元素都在一行上;  高,行高及顶和底边距不可改变;  宽度就是它的文字或图片的宽度,不可改变。我们来详细了解它们的情况。  块元素(block element)一般是...
我的日志 | 2007-09-03 23:02 | 阅读 1481 次 | 评论 0 条

block(块元素)、inline(内联元素)的差别是什么?

我们首先要了解,所有的html元素,都要么是block(块元素)、要么是inline(内联元素)。下面了解一下block、inline各自的特点:  block元素的特点: 引用内容   总是在新行上开始;  高度,行高以及顶和底边距都可控制;  宽度缺省是它的容器的100%,除非设定一个宽
默认分类 | 2007-09-03 23:00 | 阅读 573 次 | 评论 0 条

JDBC驱动下载汇总

JDBC驱动下载汇总 2007年06月17日 星期日 上午 11:31 Db Name: Microsoft SQL Server (6.5, 7, 2000 and 2005) and Sybase (10, 11, 12). ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ JDBC Name: jTDS Home Page: http://jtds.sourceforge.net/ JDBC Ver: 1.0.2 Download: http://...
java | 2007-06-23 16:44 | 阅读 7040 次 | 评论 1 条

C++与C#,java比较

染色体 1:纯对象导向语言C# 和 Java 都是纯对象导向语言,C++ 非纯对象导向语言。染色体 2:强制型态检查C# 和 Java 都强制进行型态检查,C++ 则较宽松。染色体 3:宏C# 和 Java 都不支持宏,C++ 支持宏。染色体 4:TemplateC# 和 Java 都不支持 template,C++ 支持 template。染色体 5:多重继承C# 和 Java 都不支持多重继承,且都支持 interface,C++ 支持多重继承。染色体 6:指针 C# 和 Java 都不支持指针,C++ 支持指针。(不过,C# 允许在 unsafe code 内使用指针)染色体 7:...
我的日志 | 2007-06-22 06:26 | 阅读 2594 次 | 评论 0 条

排序算法的稳定性

1) 稳定的:如果存在多个具有相同排序码的记录,经过排序后,这些记录的相对次序仍然保持不变,则这种排序算法称为稳定的。 插入排序、冒泡排序、归并排序、分配排序(桶式、基数)都是稳定的排序算法。 2)不稳定的:否则称为不稳定的。 直接选择排序、堆排序、shell排序、快速排序都是不稳定的排序算法。 为什么要讨论排序的稳定性呢? 答:稳定性在某种方面反映着算法的健壮性 而算法的健壮性直接影响着所在程序的健壮性
算法 | 2007-05-22 06:15 | 阅读 4888 次 | 评论 0 条

C 字符串替换

// 字符串替换函数.// 能替换所有的要替换的字符串,被替换的字符串和替换的字符串不一定一样长.// pInput - 输入字符串.// pOutput - 输出字符串, 要保证足够的空间可以存储替换后的字符串.// pSrc - 要被替换的子字符串, 比如%user%// pDst - 要替换成的字符串, 比如user1// 注意:以上的字符串均要以'\0'结尾.//void Substitute(char *pInput, char *pOutput, char *pSrc, char *pDst){ char *pi, *po, *p; int nSrc...
算法 | 2007-05-20 05:02 | 阅读 5672 次 | 评论 0 条

asp.net 动态添加多附件上传

最近有人问起动态多文件上传,想要做到类似于邮箱添加附件的效果,这个功能其实比较简单,就是往form中添加file元素。在用户选择完文件后,再添加一个file控件,由于file控件过多,视觉上不好看,所以隐藏之前的控件,保持页面上只有一个控件,同时把文件名添加到附件列表中。 注意:页面上初始的file控件必须有runat="server"标志。也就是说,这个页面上必须至少有一个runat="server"的file控件,否则后台接收不到Request.Files。 <FORM id="form1" runat="server"> <DIV id="...
.NET 技术 | 2007-05-17 18:43 | 阅读 1822 次 | 评论 1 条

.NET 开发人员应该下载的十个必备工具2

FxCop.NET 框架非常强大,这意味极有可能创建优秀的应用程序,但也同样存在创建劣质程序的可能。FxCop 是有助于创建更好的应用程序的工具之一,通过分析程序集,并使用许多不同的规则来检查它是否符合这些规则。FxCop 随附了由 Microsoft 创建的一组规则,你也可以创建并包括你自己的规则。例如,如果你决定所有的类都应该具有一个不带任何参数的默认构造函数,则可以编写一条规则,以确保程序集的每个类上都具有一个构造函数。这样,无论是谁编写该代码, 你都将获得一定程度的一致性。如果你需要有关创建自定义规则的详细信息,参见 John Robbins 有关这方面的 Bugslayer ...
.NET 技术 | 2007-05-07 06:19 | 阅读 1743 次 | 评论 1 条

.NET 开发人员应该下载的十个必备工具1

NUnit:编写单元测试的工具 NDoc:创建代码文档的工具 NAnt:生成解决方案的工具 CodeSmith:代码生成工具 FxCop:用于监视代码的——代码警察 Snippet Compiler:小型代码段编译工具 两个不同的转换器工具,ASP.NET 版本转换器(Version Switcher)和 Visual Studio .NET 项目转换器(Project Converter)Regulator:生成正则表达式工具 .NET Reflector:程序集分析检查工具 文使用了以下技术:.NET,C#,Visual Basic .NET,Vi...
.NET 技术 | 2007-05-07 06:18 | 阅读 1427 次 | 评论 0 条

Tag的社会属性及Catalog的私人属性

原文:http://woooh.com/post/tag_for_net.html Tag的社会属性及Catalog的私人属性。   随着对网络软件[1][2]的进一步整理,在《Tags,无序,分类和家族相似》一文中,所遗漏的一个问题开始浮出水面。  文章讨论了Tag在面向信息本身所表现的“个性化”和“碎片化”;但是却忽略了另外一个方面,即Tag在信息的人际传播过程中,何以呈现其社会化的独特作用?  除了逻辑本身在外延上的不足,引发思考的的另一个重要矛盾在于,当大家都认为Tag具有相当的个性,但在Flickr上浏览Tag的时候,所感受到的却正是社会性所表现出的连续和共性。  个性和社...
我的日志 | 2007-05-03 06:20 | 阅读 1587 次 | 评论 0 条

edgeio与微内容聚合

edgeio与微内容聚合 Edgeio,一个名字拗口而且还在内测中的服务,引发了不少人的讨论,考虑到在它的背后是大名鼎鼎的Techcrunch的作者Michael Arrington,这也不足为奇。而Edgeio的业务模式无疑也是吸引大家讨论的一个重要因素。 如果你参加过去年的Blogger年会,或者你有阅读Isaac的blog,那你一定对于Isaac提出的全球最大的C2C平台有印象。但仅仅通过一个统一的Tag,再到Technorati去搜索,无疑在数量飞速增长后,会出现无法有效查找信息的问题。Edgeio也是从这一思路出发,提供去中心化的分类广告服务,将散落在众多去中心化的bl...
我的日志 | 2007-05-03 05:16 | 阅读 1165 次 | 评论 0 条

Tags,无序,分类和家族相似

Tags,无序,分类和家族相似   如果你已经看相关的关于Tags的各种说法,我希望你能够暂时忘掉全部的那些解释,之后再重新回忆起来;但如果你还不了解Tags,那么有必要先阅读文章最后留下的链接,然后回到上一步:)  那么,什么是Tags?很简单,往下看;·经典的信息构成模式;   在传统的网页组成中,我们通常使用Taxonomy(分类法)来归纳、整理和存放我们的信息,图书馆是一个绝好的例子,所有的信息从一个点开始,形成树状的分类,由此构成一个完整的、相互联系起来逻辑体系;  这个体系从一开始就是人为分类形成的,在我们需要检索的时候,几乎不需要费多大的劲;  [例子]比如我们的B...
我的日志 | 2007-05-03 05:07 | 阅读 1310 次 | 评论 0 条

无题

默认分类 | 2007-04-23 06:13 | 阅读 522 次 | 评论 0 条

prototytpe ajax.js 源码解读

/** * 定义 Ajax 对象, 静态方法 getTransport 方法返回一个 XMLHttp 对象 */ var Ajax = { getTransport: function() { return Try.these( function() {return new ActiveXObject('Msxml2.XMLHTTP')}, function() {return new ActiveXObject('Microsoft.XMLHTTP')}, function() {return new XMLHttpR...
我的日志 | 2007-04-23 06:11 | 阅读 1175 次 | 评论 0 条

prototype 源码解读 1

/** * 定义一个全局对象, 属性 Version 在发布的时候会替换为当前版本号 */ var Prototype = { Version: '@@VERSION@@' } /** * 创建一种类型,注意其属性 create 是一个方法,返回一个构造函数。 * 一般使用如下 * var X = Class.create(); 返回一个类型,类似于 java 的一个 * Class实例。 * 要使用 X 类型,需继续用 new X()来获取一个实例,如同 java 的 * Class.newInstance()方法。 * *...
我的日志 | 2007-04-23 06:05 | 阅读 1148 次 | 评论 0 条

javascript语言中的闭包 2

但是ECMAScript提供的with表达式会修改scope chain.with表达式,我是能不用就不用了,<javascript权威指南>中也说with会造成性能的集聚下降。原文贴在下面。有时间再仔细研究。 The with statement evaluates an expression and if that expression is an object it is added to the scope chain of the current execution context (in front of the Activation/Variable object). T...
我的日志 | 2007-04-22 05:49 | 阅读 995 次 | 评论 0 条

javascript语言中的闭包 1

写在前面的话:试图翻译自 http://jibbering.com/faq/faq_notes/closures.html文中大量提到《ECMA 262 》,我也没时间读这东西,可能有问题理解有误。希望纠正。只译了前边部分,我得理解几天再继续下去。英文水平差,凑合看吧。国内找了半天没这篇文章中文版,献丑了就。读后有种豁然开朗的感觉,清楚了很多javascript的问题。 一、Introduction Closure (闭包)A "closure" is an expression (typically a function) that can have free variables...
我的日志 | 2007-04-22 05:48 | 阅读 1105 次 | 评论 0 条

没看懂的一篇文章

最近再学javascript,在闭包这个技术问题上卡住了,不太好理解,今天看了一篇文章,准备以后学明白了 再回头看看,先保存在这里: 出来混,迟早要还。今天写JavaScript代码,才知道一个循环里的函数共享同一闭包。比如下面的代码是错的,不能正确报告每个事件对应的描述: var div = document.getElementById("testDiv");var events = {onclick: "clicked", onchange: "changed", onmouseover: "mouse over"}; for(e in events){ div[e...
我的日志 | 2007-04-21 22:03 | 阅读 1158 次 | 评论 0 条

W3C标准,构架及其好处

什么是W3C标准  站点标准(Site Standard)不是某一个标准,而是一系列标准的集合。网页主要由三部分组成:结构 (Structure)、表现(Presentation)和行为(Behavior)。对应的标准也分三方面:结构化标准语言主要包括 XHTML和XML;表现标准语言主要包括CSS;行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。这些 标准大部分由W3C起草和发布,也有一些是其他标准组织制订的标准,比如ECMA(European Computer Manufacturers Association)的ECMAScript标准。下面我们来简单...
我的日志 | 2007-04-13 05:38 | 阅读 1521 次 | 评论 0 条
浏览112285次