少说话,多做事

导航

 

2014年3月17日

摘要: 一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp]view plaincopyinta=100;intb=a;而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。[c-sharp]view plaincopy#includeusingnamespacestd;classCExample{private: inta;public://构造函数 CExample(intb) {a=b;}//一般函数 voidShow() {coutusingnamespacestd;classCExample{p 阅读全文
posted @ 2014-03-17 00:51 少说话,多做事 阅读(185) 评论(0) 推荐(0)
 

2014年3月16日

摘要: 题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存)。关 于中位数:数据排序后,位置在最中间的数值。即将数据分成两部分,一部分大于该数值,一部分小于该数值。中位数的位置:当样本数为奇数时,中位数= (N+1)/2 ; 当样本数为偶数时,中位数为N/2与1+N/2的均值(那么10G个数的中位数,就第5G大的数与第5G+1大的数的均值了)。分析:明显是一道工程性很强的题目,和一般的查找中位数的题目有几点不同。1. 原数据不能读进内存,不然可以用快速选择,如 阅读全文
posted @ 2014-03-16 23:31 少说话,多做事 阅读(667) 评论(0) 推荐(0)
 
摘要: (一)7种设计坏味道1.僵化性: 很难对系统进行改动,因为每个改动都会迫使许多对系统其他部分的其它改动。2.脆弱性: 对系统的改动会导致系统中和改动的地方在概念上无关的许多地方出现问题。3.牢固性: 很难解开系统的纠结,使之成为一些可在其他系统中重用的组件。4.粘滞性: 做正确的事情比做错误的事情要困难。5.复杂性(不必要的): 设计中包含有不具任何直接好处的基础结构。6.重复性(不必要的): 设计中包含有重复的结构,而该重复的结构本可以使用单一的抽象进行统一。7.晦涩性: 很难阅读、理解。没有很好地表现出意图。(二)11种原则- Principle----类原则1.单一职责原则- Singl 阅读全文
posted @ 2014-03-16 23:30 少说话,多做事 阅读(390) 评论(0) 推荐(0)
 
摘要: 开发文档遗漏了某些重要内容或某些设计,不能全部满足既定的技术指标; 或存在逻辑错误、引用错误; 再或者引入了不必要的风险。这些问题在软件开发文档中屡见不鲜,而软件验证技术就是着力于解决这些问题,力争使开发文档臻于完善。通过图1可以发现,软件缺陷错误绝大多数是在需求和设计阶段引入的,不清晰的需求分析、不合理的系统设计常常导致后续的开发活动困难重重。因此,需求验证和设计验证是软件验证的重点,对于排除软件缺陷而言是非常关键的。 软件需求验证一份未经验证的《软件需求规格说明》(以下简称《需求说明》),极可能是包含着种种隐藏的软件缺陷, 这些缺陷如果被带入到后续的开发阶段或当系统投入使用时才被发现,将会 阅读全文
posted @ 2014-03-16 23:29 少说话,多做事 阅读(888) 评论(0) 推荐(0)
 
摘要: 将Excel文件数据库导入SQL Server的三种方案//方案一: 通过OleDB方式获取Excel文件的数据,然后通过DataSet中转到SQL ServeropenFileDialog = new OpenFileDialog();openFileDialog.Filter = "Excel files(*.xls)|*.xls";if(openFileDialog.ShowDialog()==DialogResult.OK){ FileInfo fileInfo = new FileInfo(openFileDialog.FileName); string file 阅读全文
posted @ 2014-03-16 23:28 少说话,多做事 阅读(618) 评论(0) 推荐(0)
 
摘要: 方法1:调用com组件,导出access数据到Excel,就是直接调用access的导出功能,此方法速度超级快using Access;Access.ApplicationClass oAccess =new Access.ApplicationClass();oAccess.Visible =false;try{//ACCESS9:oAccess.OpenCurrentDatabase("d:\\wcf.mdb",false,"");//导出到exceloAccess.DoCmd.TransferSpreadsheet(Access.AcDataTra 阅读全文
posted @ 2014-03-16 23:27 少说话,多做事 阅读(584) 评论(0) 推荐(0)
 
摘要: 面向过程设计和面向对象设计的主要区别是:是否在业务逻辑层使用冗长的if else判断。如果你还在大量使用if else,当然,界面表现层除外,即使你使用Java/C#这样完全面向对象的语言,也只能说明你的思维停留在传统的面向过程语言上。 传统思维习惯分析 为什么会业务逻辑层使用if else,其实使用者的目的也是为了重用,但是这是面向过程编程的重用,程序员只看到代码重用,因为他看到if else几种情况下大部分代码都是重复的,只有个别不同,因此使用if else可以避免重复代码,并且认为这是模板Template模式。 他范的错误是:程序员只从代码运行顺序这个方向来看待它的代码,这种思维类... 阅读全文
posted @ 2014-03-16 23:26 少说话,多做事 阅读(918) 评论(0) 推荐(0)
 
摘要: 将web页面上显示的报表导出到excel文件里是一种很常见的需求。润乾报表的类excel模型,支持excel文件数据无失真的导入导出,使用 起来非常的方便。然而,当数据量较大的情况下,excel本身的支持最多65535行数据的问题便凸显出来。下面就给出大数据量导出到excel的解决方 案。首先,对于数据超过了65535行的问题,很自然的就会想到将整个数据分块,利用excel的多sheet页的功能,将超出65535行后的数据写入到下一个sheet页中,即通过多sheet页的方式,突破了最高65535行数据的限定。具体做法就是,单独做一个链接,使用JSP导出,在JSP上通过程序判断报表行数,超过6 阅读全文
posted @ 2014-03-16 23:25 少说话,多做事 阅读(3307) 评论(0) 推荐(0)
 
摘要: 1, 通过js实现-onfocus="this.blur()"输入框无法获得焦点,不能编辑表单可以获得值。可以复制。蛮奇怪的,都选住了,还没有获得焦点?2,readonly输入框只读。不能编辑同样表单可以获得值。也可以复制。2,disabled输入框灰色,不能编辑可以用JS改变或获得其值,但提交时并不提交该值。个人还是比较喜欢用readonly,因为 disabled 的 input 的值不能提交到表单。其实第一和第二效果差不多。视觉上第一个,点击的时候光标会闪烁一下。第三个,灰色的输入框看起来还是不喜欢。onfocus="this.blur()" 这个 阅读全文
posted @ 2014-03-16 23:24 少说话,多做事 阅读(759) 评论(0) 推荐(0)
 
摘要: 会使用索引,导致全表扫描情况1.不要使用in操作符,这样数据库会进行全表扫描,推荐方案:在业务密集的SQL当中尽量不采用IN操作符2.not in 使用not in也不会走索引推荐方案:用not exists或者(外联结+判断为空)来代替3 操作符(不等于) 使用同样不会使用索引,因此对它的处理只会产生全表扫描推荐方案:用其它相同功能的操作运算代替,如 a0 改为 a>0 or a’’ 改为 a>’’4.IS NULL 或IS NOT NULL操作(判断字段是否为空)判断字段是否为空一般是不会应用索引的,因为B树索引是不索引空值的。推荐方案:用其它相同功能的操作运算代替,如 a i 阅读全文
posted @ 2014-03-16 23:22 少说话,多做事 阅读(257) 评论(0) 推荐(0)