zoukankan      html  css  js  c++  java
  • 2017《面向对象程序设计》课程作业二

    GitHub链接

    文件分离感想

    首次用.h和.cpp分离,虽然用起来磕磕绊绊,但写完之后对于后续要对这个程序进行改进的人来说,确实更加清晰,毕竟声明和运算分开了,也不用在整个main函数里没有没脑的找定义。
    这次写的程序比较简单,还体现不出public和private分开的必要性,甚至一开始我一直在纠结到底要把什么定义为private。这里和外界有交集的是用户需要输入半径,以及程序输出面积,所以用来接收的R和用来输出的函数就不能设置成private。不过用来运算的变量r就可以设置成private,到时候用R内部调用一下赋值给它就可以了,然后用来算面积的那个函数也从内部调用一下r,就不用R,再顺带输出。
    我发现就是为.h写的.cpp文件,可以用来写各函数的具体运算内容,以及成员变量之间的相互调用,但还是和主函数有很大差别。比如我遇到的一个问题就是那个.cpp文件里面的函数不会自己调用,就像外函数一样没有具体的调用语句就不会运行。但是一开始我很蠢,.cpp里写了这一段代码:

    Circel::circel(double R) //所有的circle都打错成circel了。。。。
    {
    this->r=R;
    }
    double Circel::Area()
    {
    return 3.14 * r * r;
    }

    然后就直接在mian.cpp文件里写

    cin >> R;
    cout << "AREA=" << a.Area() <<endl;

    我没有调用circel(double R)函数就妄图然它自己赋值给r,结果一直输出0,特别无语。
    这是我遇到的最无奈的错误,除了这个问题之外其他的倒没什么。还有就是在调用对象里的变量也好,函数也好,都要像调用结构体那样。有三种形式,在谭浩强那本书上P231。
    还有一个问题,就是我用的是vs6.0,我把所有的代码都打完之后,运行也没问题了,就关掉了。等我再打开的时候,发现file里面.h配套的.cpp文件不见了,然后整个程序就不能运行了。我不知道别人会不会这样,我要添加也添加不了,可能是当初安装的时候出问题了。所以我现在正在改装eclipse,不过那个真的好麻烦。。。

  • 相关阅读:
    login
    我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
    基于jsp+servlet的javaweb实现最基本的用户注册登陆注销功能
    JavaScript第一讲之js操作css
    JavaScript第一讲之认识js案例
    Java的数据库连接工具类的编写
    JavaEE框架整合之基于注解的SSH整合
    windows端口号速查表
    工厂模式
    流策略概述Traffic Policy
  • 原文地址:https://www.cnblogs.com/s0316026/p/6774194.html
Copyright © 2011-2022 走看看