最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

维护MSG_cpp实验报告

来源:动视网 责编:小OO 时间:2025-09-30 01:36:01
文档

维护MSG_cpp实验报告

MSG维护---实验报告软工1201—金天阳--2012266301061、纠错性维护错误:Mortgage的删除功能出错添加Mortgage删除Mortgage查看ListofMortgage从结果可以看出,删除未成功原因:在以下代码中,缺少红色的字体的语句,导致原有文件删除不成功。voidMortgage::performDeletion()////performDeletionperformstheactualdeletionofamortgagerecordfromafile//{if
推荐度:
导读MSG维护---实验报告软工1201—金天阳--2012266301061、纠错性维护错误:Mortgage的删除功能出错添加Mortgage删除Mortgage查看ListofMortgage从结果可以看出,删除未成功原因:在以下代码中,缺少红色的字体的语句,导致原有文件删除不成功。voidMortgage::performDeletion()////performDeletionperformstheactualdeletionofamortgagerecordfromafile//{if
MSG维护---实验报告

软工1201—金天阳--201226630106

1、纠错性维护

错误:

Mortgage的删除功能出错

添加Mortgage

删除Mortgage

查看List  of  Mortgage

从结果可以看出,删除未成功

原因:

在以下代码中,缺少红色的字体的语句,导致原有文件删除不成功。

void Mortgage::performDeletion ()

  //

  // performDeletion performs the actual deletion of a mortgage record from a file

  //

  {

     ifstream  inFile;                            // stream object used for file input 

    ofstream  tmpFile;                            // stream object used for file copying

    Mortgage* mortgage = new Mortgage ();        // record to be checked

    bool      multipleWrite = false;

    inFile.open ("mortgage.dat");

    if (!inFile)

      return;

    tmpFile.open ("mortgage.tmp");

    while (!inFile.eof ())

    {

mortgage->read (inFile);

if (assetNumber.compare (mortgage->getAssetNumber ()) != 0)

      {

mortgage->write (tmpFile, multipleWrite);

          multipleWrite = true;

      }

    }

    inFile.close ();

    tmpFile.close ();

    remove("mortgage.dat");//删除文件操作

    if(multipleWrite)

      rename("mortgage.tmp", "mortgage.dat");

    else

      remove("mortgage.tmp");

  }  // performDeletion ()

2、使一对夫妇每周付给MSG基金会的金额不会超过他们周收入的26%(而不是原来的28%),实现中有多少处需要修改?

答:只需修改Mortgage.cpp中的double Mortgage::MAXIMUM_PERC_OF_INCOME = (double) 0.26;

3、MSG基金会决定开始基于月来运行业务,而不是基于周。相应修改实现

答:需要将所有的52改为12

(1)修改Mortgage.cpp中的double Mortgage::WEEKS_IN_YEAR = (double) 12.0;

(2)修改EstimateFundsForWeek.cpp中的void EstimateFundsForWeek::compute()方法,

estimatedFunds = (expectedWeeklyInvestmentReturn-

(op->getAnnualOperatingExpenses () / 12.0) + expectedTotalWeeklyNetPayments);

(3)修改Investment.cpp中的double Investment::totalWeeklyReturnOnInvestment ()方法,

return (totalAnnualReturn / (double) 12.0);

4、程序代码见MSG.rar

5、维护体会。

对代码进行维护,首先要做的是读懂并理解代码,了解程序文件之间的调用关系,这花去我大半的时间。查找错误时,每个功能都要进行检查,工作枯燥、繁琐、效率低。维护工作不好做。

文档

维护MSG_cpp实验报告

MSG维护---实验报告软工1201—金天阳--2012266301061、纠错性维护错误:Mortgage的删除功能出错添加Mortgage删除Mortgage查看ListofMortgage从结果可以看出,删除未成功原因:在以下代码中,缺少红色的字体的语句,导致原有文件删除不成功。voidMortgage::performDeletion()////performDeletionperformstheactualdeletionofamortgagerecordfromafile//{if
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top