软工作业——结对编程

↘锁芯ラ 提交于 2019-12-01 08:43:41

项目网址
结对伙伴地址

PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 120
· Estimate · 估计这个任务需要多少时间 2400 2625
Development 开发 300 200
· Analysis · 需求分析 (包括学习新技术) 100 100
· Design Spec · 生成设计文档 30 30
· Design Review · 设计复审 (和同事审核设计文档) 80 80
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 40 30
· Design · 具体设计 200 100
· Coding · 具体编码 800 900
· Code Review · 代码复审 100 200
· Test · 测试(自我测试,修改代码,提交修改) 100 50
Reporting 报告 60 50
· Test Report · 测试报告 60 40
· Size Measurement · 计算工作量 30 45
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 40 50
合计 1900 1995

具体流程(我负责NumEssay和main函数)

实现过程

统计行数

int NumEssay::linenum() // 输出行数
{
    in.open(file_name, std::ios::in);
    int count = 0;
    if (in.is_open()) //检查文件是否打开
    {
        while (!in.eof())
        {
            if (in.good()) ///如果文件流对,就继续运行
            {
                getline(in, buffer);
                if (buffer != "")
                    ++count;
            }
            else
            {
                std::cout << "Error:读取的文件可能过大内存无法存储" << std::endl;
            }
        }
    }
    else
    {
        std::cout << "Open " << file_name << "failing!!!" << std::endl;
    }
    in.close();
    return count;
}

统计字符数

int NumEssay::charnum()
{
    in.open(file_name, std::ios::in);
    int count = 0;
    if (in.is_open())//检查文件是否打开
    {
        while (!in.eof())
        {
            if (in.good())//如果文件流对,就继续运行
            {
                getline(in, buffer);
                if (buffer != "")
                {
                    count += buffer.size();
                    if (!in.eof())
                        count += 1; //加上换行符
                }
                else if (!in.eof())//buffer为空,但是为换行符, 
                {
                    count += 1;
                }
            }
            else
            {
                std::cout << "Error:读取的文件有错误" << std::endl;
            }
        }
    }
    else
    {
        std::cout << "Open " << file_name << "failing!!!" << std::endl;
    }
    in.close();
    return count;
}

mian函数

main函数
#include"pch.h"
#include"NumEssay.h"
#include"myText.h"
#include
#include
#include
#include
#include

using namespace std;
int flag[4] = { 0 }, sum=0;
vector pd(4);

int CheckArgs()
{
    if(sum  4) { 
        cout 

感悟

这次结对伙伴虽然是第一次组队,但我们对对方能力都是肯定的,在结对过程中难免会遇到参数不符合要求的时候,但我们都能很快解决问题

除此之外,在编码的过程我再一次理解了 c++ 的文件操作,也从队友的代码中看到了不曾了解的操作,增加了知识,以后有空再把他们整理出来发表,主要是关于c++文件操作的换行符问题,也有一遍复习了相关工具与流程

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!