搜索到与相关的文章
编程技术

C语言面向对象编程(三):虚函数与多态

在《C++编程思想》一书中对虚函数的实现机制有详细的描述,一般的编译器通过虚函数表,在编译时插入一段隐藏的代码,保存类型信息和虚函数地址,而在调用时,这段隐藏的代码可以找到和实际对象一致的虚函数实现。我们在这里提供一个C中的实现,模仿VTABLE这种机制,但一切都需要我们自己在代码中装配。之前在网上看到一篇描述C语言实现虚函数和多态的文章,谈到在基类中保存派生类的指针、在派生类中保存基类的指针来实现相互调用,保障基类、派生类在使用虚函数时的行为和C++类似

系统 2019-08-29 22:29:10 2059

编程技术

编程语言的发展趋势:声明式动态并发

这是一篇发表在《程序员》杂志8月刊的文章,是根据我对AndersHejlsberg的演讲内容的翻译的缩写。原本的完整演讲内容有数万字,为了在杂志上发表因此简化成了五千字,因此如果您对完整内容感兴趣,不妨根据文末链接来访问完整内容,其中也包含大量分解的幻灯片以及代码。程序设计离不开编程语言,但是编程语言在国内的大环境中似乎一直是个二等公民。国内的计算机教育和工程培训,似乎一直在宣传“语言不重要,重要的是思想”,“语言一通百通”等观点,甚至在许多人眼中“语言的

系统 2019-08-29 22:12:46 2059

编程技术

大话重构连载17:抽取方法的实践

说了那么多理论,我们来看看怎样使用抽取方法来重构遗留系统。如前所述,重构的过程首先是阅读程序代码,边阅读边整理程序。将功能相对独立的代码段放在一起,在前面加上注释。调整一些程序的顺序,将相关的代码尽量放在一起,但要保证程序执行的结果不会发生改变。比较典型的,将变量的定义与使用变量的代码放在一起。这个步骤比较实用,因为许多的遗留系统,其代码都有一个坏毛病,就是在程序开始时定义一大堆变量,但要弄清这些变量都用来做什么,却十分困难。边读边调整,将变量的定义逐渐迁

系统 2019-08-29 21:59:02 2059

编程技术

jFreeChart(动态web应用)

JFreeChart1.0.2的动态应用,根据数据库中的数据生成饼图:(部分来自网页)本文用的是JFreeChart1.0.2(根据版本不同需要根据类修改部分代码)下载:http://www.jfree.org/jfreechart/index.html下载后解压jfreechart-1.0.2.zip,会发现在lib下有几个jar文件,本文只介绍生成饼图的例子:1,首先将lib下的jcommon-1.0.5.jar和jfreechart-1.0.2.ja

系统 2019-08-12 09:30:12 2059

编程技术

总结一下维护了一年的一个软件系统的软件体系(

这个软件架构使用的mvc架构包括使用自身一套页面逻辑,标签类型比较简单,包括逻辑判断标签、页面赋值标签和循环list对象取值标签。在执行完页面请求返回的页面没有规定,可以是jsp,也可以是html页面,使用上一篇提到的Common对象跳转页面,方法为:common.showPage("page")方法,因为没有该框架的这部分源代码,只能大概推测,这个方法是读入页面,并将执行页面含有的逻辑标签和赋值,一个方法可以多次使用该方法,最后的执行结果是多个页面顺次显

系统 2019-08-12 09:29:58 2059

各行各业

我又对自己说,要好好写写我的文字了

我又对自己说,要好好写写我的文字了。已经因为烦恼,因为繁忙,忘记了太多,放弃了太多。就如人说的,为什么而活着呢窗外阳光灿烂,北风凛冽。我们为什么活着呢?为什么执意要想活得精彩呢。在经历了一些些人事和挫折,看到自己的反应的时候才知道自己的确不是那开局定运之辈,不过像童安格得歌一样,是个平凡人,想过平凡知足的人生吧如若没有负担,没有担子,会很轻拂,浮躁罢;也许,这些都是男人必须承担的。现在面对这样的压力,忽然觉得社会于自己很陌生,如此沉重的隔阂让我也滋生了许多

系统 2019-08-12 09:27:23 2059

各行各业

The temp directory in chart handler configur

下午开始就遇到这个错误...Thetempdirectoryincharthandlerconfigurationisnotaccessible中文翻译为:在图标处理配置临时目录不能访问我是在使用MSChart时候遇到的...web.config中你会发现这个在appSettings标记:你得到错误时

系统 2019-08-12 09:27:10 2059

各行各业

汇编helloword

代码assumecs:code,ds:datadatasegmentmsgdb"helloworld"dataendscodesegmentstart:movax,datamovds,axmovbx,0b800hmoves,bxmovcx,11movah,01000010bmovsi,0movbx,0s:moval,ds:[si]moves:[bx],almoves:[bx+1],ahincsiaddbx,2loopsmovax,4c00hint21hco

系统 2019-08-12 09:26:59 2059

编程技术

大话设计模式---备忘录模式

备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。Memento模式比较适用于功能比较复杂的,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属性中的一小部分时,Originator可以根据保存的Memento信息还原到前一状态。大话设计模式---备忘录模式

系统 2019-08-12 01:33:16 2059

编程技术

服务器集群怎么实现?

硬件配置范例:网络服务器两台服务器操作系统硬盘两块服务器数据存贮硬盘视用户需要确定服务器镜像卡(部分软件可使用标准网卡)两块网络服务网卡两块三、双机与磁盘阵列柜集群的软件配置基于NT平台的集群软件Microsoft的MSCS,也有许多第三方的专业软件公司开发的集群软件,如豪威的DATAWARE,VINCA公司的STANDBYSERVER,NSI公司的DOUBLE-TAKE.MSWolfPack的特点MSWolfPack是MSClusterserver的别称

系统 2019-08-12 01:33:15 2059