摘要:处理 c++ 中的异常会在语言级别上遇到少许隐含限制,但在某些情况下,您可以绕过它们。学习各种利用异常的方法,您就可以生产更可靠的应用程序。 保留异常来源信息 在 c++中,无论何时在处理程序内捕获一个异常,关于该异常来源的信息都是不为人知的。异常的具体来源可以提供许多更好地处理该异常的重要信息,或者提供一些可以附加到错误日志的信息,以便以后进行分析。 为了解决这一问题,可以在抛出异常语句......
摘要: 这是关于如何用各种可以得到的接口为linux开发网络程序的系列文章的第一篇。就像大多数unix-based的操作系统一样,linux支持将tcp/ip作为本地的网络传输协议。在这个系列中,我们假定你已经比较熟悉linux上的c编程和linux的一些系统知识诸如signals,forking等等。
这篇文章是关于如何用bsd套接口创建网络程序的基础介绍 。在下一篇中,我们会解决涉及到建立(......
接口设计对软件性能的影响 性能方面的问题有好多种.最容易修正的一种是,在执行一项计算任务时使用了一个性能不好的算法,例如,在对数目很多的数据进行排序时采用了起泡算法,每次使用时对一个经常使用的数据项进行计算而不是将它保存起来,这些问题一般我们都能很容易发现,而且一旦发现后,都能很方便地进行改正.然而,许多java程序性能方面的问题都是是由一些比较深奥的.不容易修改的代码━━程序组件的接口设计引起的. 【程序编程相关:
感受未来:longhorn4051完全…】 【推荐阅读:
感受未来:longhorn4051完全…】 【扩展信息:
感受未来:longhorn4051完全…】 大多数的程序都是由内部人员开发的或从外部购买的组件"组装"而成的.即使软件不完全依赖于原有的组件,面向对象的设计过程也使得应用程序在开发时采用组件形式,因为这样可以简化程序的设计.开发与调试方面的工作.尽管采用组件的好处是不可否认的,我们还应该意识到组件的接口会对使用它们的程序的性能与运行状态产生重大的影响. 也许会有读者问,接口跟性能有什么关系?一个类的接口不但定义了类可以完成的功能,而且还定义了它的对象创建行为与使用它所需要调用的方法的顺序,一个类如何定义它的构造器与方法会影响这个对象是否可以重用,是它本身的方法创建还是要求其客户创建中间对象,客户要使用这个类需要调用多少个方法. 所有这些因素都会影响到程序的性能.java软件性能管理方面的基本原理之一是:避免创建过多的对象.这并不意味着你不能创建任何对象从而不充分利用面象对象语言带来的诸多好处,而是说在开发对性能敏感的代码时需要对对象的创建保持谨慎.对象创建的代价相当高昂,我们应该在对性能敏感的软件中尽量避免创建临时或中间对象. 在处理字符的程序中,string类是引起对象创建的最大源.因为string类是不可变的,每当一个string类的对象被修改或构造时,都会创建一个新的对象.因此,一个具有性能意识的编程人员总是避免过多地使用string类对象.然而,尽管你在编程中尽量避免使用string对象,还是会经常发现使用的组件接口必须使用string对象,因此,你不可能不使用string类对象. 例子:表达式的匹配 作为一个例子,可以假设你在编写一个名字为mailbot的邮件服务器.mailbot需要处理每个邮件顶部的mime头部━━例如发送日期或者发送者的邮件地址,它将通过使用一个匹配表达式的组件处理mime头部,以使这一处理过程会更简单一些.它把输入的字符放在一个字符缓冲区中,通过对缓冲区进行索引处理标题.由于mailbot将调用这一表达式匹配子程序来处理每一个标题,因此这个匹配子程序的性能将十分地重要. 我们首先来看一个性能十分低下的表达式匹配类的接口: ...
下一页 摘要:nf ------------------- the number of fields in the current input record. nr ------------------- the total number of input records seen so far. ofmt ------------------- the output format for numbers, &......