摘要: 参数以引用参数传递和以指针形式传递效果相同;差异是:指针可能不指向某一实际对象,当我们提领指针时,一定要先确定其值并非为0;而引用必定会代表某个确定的对象,所以不须做此检查;故综合比较指针参数和引用参数 引用参数的更有优势,因为引用参数不需要检查,而使用指针参数时需要检查是否指向某一确定的对象;总结:1.将参数声明为引用的理由之一是,希望直接对所传入的对象进行修改2.将参数声明为引用的理由之二是,降低复制大型对象的负担3.传址方式主要应用于类类型之上,当传递内建类型时,不要使用传址方式 阅读全文
posted @ 2012-03-26 01:44 liuhao2638 阅读(1691) 评论(0) 推荐(0) 编辑
摘要: 文件的读写操作1.开启一个可供输出的文件 ofstream outfile("filename"); 如果指定的文件存在,这个文件会被开启为输出之用,而文件中原已存在的数 据会被丢失; 如果指定的文件不存在,便会有一个文件被产生出来并开启为输出之用; 如果文件已经存在,并且我们不希望丢弃原有内容,而是希望增加新数据到文 件中,那么我们以追加模式(append mode)开启这个文件,提供第二个参数 ios_base::app ofstream outfile("filename",ios_base::app); 文件开启有可能失败,在进行写入操作之前,我 阅读全文
posted @ 2012-03-26 00:59 liuhao2638 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 一个健壮的Fibonacci数列函数的实现函数功能:返回Fibonacci数列中的指定位置的元素;1.基本函数的实现代码如下:int fibon_elem(int position){ int elem=1; int n_1=1,n_2=1; for(int ix=3;ix<=position;++ix) { elem=n_1+n_2; n_1=n_2; n_2=elem; } return elem;}分析:函数满足了我们基本的功能,但实际上我们做了两个不合理的假设;1).假设用户不会犯错,输入的均为合理的位置,不会出现输入零值或负值的情况2).该位置上的数在int型整数的范围之内实际 阅读全文
posted @ 2012-03-25 23:47 liuhao2638 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 一个简单的猜数字游戏设计与实现(2)前言:敏捷编程的设计思想是:先让它跑起来,然后在其内添加功能;在前一篇文章中简单实现了猜测判断和流程控制,但只能对一种Fabonacci数列进行猜测,掌握规律后未免单调,故希望游戏扩展如下功能:有六种数列:Fibonacci,Lucas,Pell,Triangular,Square,Pentagonal;每种数列的数字排列有不同的规律,随机出现其中的一种数列的前两个数字;用户猜测第三个数字;1.设计思想:用六个vector<int>分别存放6种数列的连续三个数字,用一个指针数组存储指向六个vector的指针,随机产生一个数组下标,从而可以随机的指 阅读全文
posted @ 2012-03-25 16:35 liuhao2638 阅读(855) 评论(0) 推荐(1) 编辑
摘要: 一个简单的猜数字游戏的实现(一)前言:这几天看Essential C++, 第一章Stanley B.Lippman用C++实现了一个猜数字的小游戏,细细体会,程序虽小,但五脏俱全,一个完整的程序设计思路,变量命名,小的语法细节及指针带来的弹性设计,细细揣摩受益颇多,在这里把程序的设计过程和夹杂着自己的思路整理一下,也感谢侯捷老师细致的翻译。1.功能需求分析:游戏功能:给出Fibonacci数列的前两个数字,用户猜测第三个数字;注:我们往往从用户那里得到一个较为模糊的需求,软件功能的概括描述,或游戏功能的简单概括,而我们在用计算机实现时需要得到一个细致的需求分析,通过从计算机的角度思考及和用户 阅读全文
posted @ 2012-03-25 15:17 liuhao2638 阅读(1739) 评论(2) 推荐(2) 编辑
摘要: 前言:生成随机数是程序中经常要实现的一个小功能模块,其生成方法是程序员的必备基本功;这里将有关生成随机数有关的函数及生成的思路简单总结。正文:1.rand()函数:原型:int rand();头文件:#include<cstdlib>返回值:返回一随机数,范围在0至RAND_MAX之间,其中RAND_MAX定义在stdlib.h中;技巧:可通过求余运算调整返回随机数的范围,例如rand()%10 则返回0到9之间的随机数。生成随机数程序:#include <iostream>#include <cstdlib>using namespace std;void 阅读全文
posted @ 2012-03-25 12:00 liuhao2638 阅读(285) 评论(0) 推荐(0) 编辑