| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 226 人关注过本帖
标题:C++程序设计求助
只看楼主 加入收藏
yang158
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2019-3-12
结帖率:33.33%
  已结贴   问题点数:15  回复次数:1   
C++程序设计求助
考课本例子,建立一个源程序文件,在此文件中建立一个新的类,将新建的类命名为Rect。
class Rect
{
public:
   int Area_int();
   double Area_double();
   Rect(double length,double width);
   Rect(int length,int width);
   virtual ~Rect();
Private:
   int nLength;
   int nWidth;
   double dLength;
   double dWidth;
};
【要求】
(1)向Rect类中添加数据成员及成员函数,并完善成员函数的功能。如设计一个Area_int()函数,计算边长为整型的长方形的面积;设计一个Area_double()函数,计算边长为double型的长方形的面积。
(2)重载构造函数。一种构造函数用整型变量记录长方形的长和宽,另一种构造函数用double型记录。
(3)体现对象的构造和析构过程。例如,在构造函数中用cout<<”I am the constructor!”<<endl;在析构函数中输出cout<<”I am the destructor”<<endl。
(4)在main()函数中定义两个Rect类的对象,一个对象用实例实现(就像定义普通的变量一样),另一个对象用指针实现(利用关键字new,给指针分配内存空间)。并用不同的参数,以调用不同的构造函数体现构造函数的重载。

这是我的程序:
#include<iostream>
#include<string>
using namespace std;
class Rect
{
public:
   int Area_int()
   {
   int Area;
   Area=nLength*nWidth;
   cout<<"边长为整型的长方形的面积:"<<Area<<endl;
   return Area;
   }
   double Area_double()
   {
   double Area;
   Area=nLength*nWidth;
   cout<<"边长为双精度型的长方形的面积:"<<Area<<endl;
   return Area;
   }
   Rect(double length,double width)
   {
   dLength=length;
   dWidth=width;
   cout<<"I am constructor!"<<endl;
   }
   Rect(int length,int width)
    {
   nLength=length;
   nWidth=width;
   cout<<"I am constructor!"<<endl;
   }
   virtual ~Rect()
   {
   cout<<"I am the destructor!"<<endl;
   }
private:
   int nLength;
   int nWidth;
   double dLength;
   double dWidth;
};
int main()
{
Rect a1(4,6);
Rect *a2=new Rect(1.5,2.0);
a1.Area_int();
a2->Area_double();
return 0;
}


但是运行之后双精度的输出来有问题,该怎么改?
2019-04-09 23:29
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:303
帖 子:6303
专家分:36611
注 册:2011-1-18
  得分:15 
从题目到代码都很诡异

我猜,你的
double Area_double()
   {
   double Area;
   Area=nLength*nWidth;
其实是想
double Area_double()
   {
   double Area;
   Area=dLength*dWidth;
2019-04-10 08:36







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.123686 second(s), 9 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved