博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++构造函数与析构函数
阅读量:4966 次
发布时间:2019-06-12

本文共 1021 字,大约阅读时间需要 3 分钟。

/*
设计一个类,它具有一个float指针成员.构造函数具有一个整形参数count,
它为指针成员分配count个存储数据的元素空间.析构函数释放指针指向的空间.
另外设计2个函数成员完成如下功能: 
(1)向指针指向的空间中存储数据; 
(2)返回这些数的平均值.
*/
#include<iostream.h>
class FLOAT
{
 public:
 FLOAT(int count=10);//构造函数,count默认为10 
 ~FLOAT();//析构函数
 bool setData(float e);//存储数据
 float Average();//计算平均值 
 private:
 float *p;
 int num_of_data;//数据元素个数 
}; 
FLOAT::FLOAT(int count)
{
 
 p=new float[count];
 num_of_data=0;
  
 if(p==NULL)
 {
  cout<<"No enough memory!"<<endl;
  exit(0);  
 }
 
 cout<<endl<<"构造已经完成"<<endl<<endl;
}
FLOAT::~FLOAT()
{
 delete []p;
 cout<<endl<<"数组已经析构!"<<endl<<endl;
}
bool FLOAT::setData(float e)
{
 p[num_of_data]=e;
 num_of_data++; 
}
float FLOAT::Average()
{
 float sum=0;
 for(int i=0;i<num_of_data;i++)
  sum+=p[i];
 return sum/num_of_data; 
}
int main()
{
  cout<<"输入要输入的数据数目:"; 
 int n;
 cin>>n;
  
 FLOAT myfloat(n);//调用构造函数 
 
 cout<<"请输入"<<n<<"个数据:"<<endl;
 for(int i=0;i<n;i++)//调用setData函数
  {
   float e;
   cin>>e;
   myfloat.setData(e);
  }
  
  cout<<"数据的平均值为:"<<myfloat.Average()<<endl;//调用求平均值函数 
  
 return 0;
}

转载于:https://www.cnblogs.com/vigorz/p/10499228.html

你可能感兴趣的文章
cookie session 和登录验证
查看>>
[译] 微前端
查看>>
iOS直播技术学习笔记 YUV颜色空间(六)
查看>>
移植Linux到ZYNQ
查看>>
记录--linux下mysql数据库问题
查看>>
转载--Java中的PO、DO、DTO、 VO的概念
查看>>
记录--js中出现的数组排序问题
查看>>
学习--Spring IOC源码精读
查看>>
记录--mac下终端内的环境变量问题
查看>>
nginx实现高性能负载均衡的Tomcat集群
查看>>
Rxjs中Notification介绍(一)
查看>>
merge和concat区别
查看>>
Rxjs中Notification 介绍
查看>>
2个数组对象合并,去重,并且标志出数据来自哪个数组
查看>>
【转载】CentOS7下使用LVM给系统硬盘扩容
查看>>
1-18-1 LVM管理和ssm存储管理器使用&磁盘配额(一)
查看>>
1-3 RHEL7操作系统的安装
查看>>
1-18-2 LVM管理和ssm存储管理器使用&磁盘配额 (二)
查看>>
Centos7 系统更改apache默认网站目录(解决You don't have permission to access / on this server问题)...
查看>>
Centos7 安装python环境
查看>>