Problem E: 类的初体验(V)
Description
定义一个类Data,只有一个int类型的属性和如下方法:
1. 缺省构造函数,将属性初始化为0,并输出"Data's default constructor."。
2. 析构函数,输出:"Data # is erased.",其中“#”是属性值。
4. int getValue()——获得属性值。
5. void setValue(int)——设置属性值。
定义一个由Data的对象组成的数组类DataArray,该类包括1个int类型的属性和一个Data*类型的属性,分别为数组中元素的个数、所有的元素。定义如下方法:
2. 构造函数——参数格式请参考main函数的调用方法给出,输出:"DataArray's constructor."。
3. int getSum()——求所有Data对象属性值的和。
4. 析构函数——输出一行"DataArray's deconstructor."。
Input
若干个整数。个数大于2个。
第1个N表示后面输入的元素个数。之后有N个整数。它们用于设置main函数中DataArray的对象datas的数组元素值。
最后一个整数用于设置main函数中testP指向的对象的值。
Output
见样例~
Sample Input
Sample Output
HINT
Append Code
int main(){ int i, n; Data test, *testP; cin>>n; int tmp[n]; for (i = 0; i < n; i++) cin>>tmp[i]; DataArray datas(n, tmp); cout<<"Sum is "<<datas.getSum()<<endl; testP = new Data; cin>>n; testP->setValue(n); delete testP; return 0;}using namespace std;
class Data
{
private:
int d;
public:
Data()
{
d=0;
cout<<"Data's default constructor."<<endl;
}
~Data()
{
cout<<"Data "<<d<<" is erased."<<endl;
}
int getValue()
{
return d;
}
void setValue(int a)
{
d=a;
}
};
class DataArray
{
private:
int da;
Data *t;
public:
DataArray(int n,int *tmp)
{da=n;
int i;
t=new Data[n];
for(i=0; i<n; i++)
{
t[i].setValue(tmp[i]);
}
cout<<"DataArray's constructor."<<endl;
}
int getSum()
{
int i,sum=0;
for(i=0; i<da; i++)
{
sum+=t[i].getValue();
}
return sum;
}
~DataArray()
{
delete []t;
cout<<"DataArray's deconstructor."<<endl;
}
};
int main()
{
int i, n;
Data test, *testP;
cin>>n;
int tmp[n];
for (i = 0; i < n; i++)
cin>>tmp[i];
DataArray datas(n, tmp);
cout<<"Sum is "<<datas.getSum()<<endl;
testP = new Data;
cin>>n;
testP->setValue(n);
delete testP;
return 0;
}
Problem E: 类的初体验(V)的更多相关文章
- Problem D: 类的初体验(IV)
Description 定义一个类Data,只有一个int类型的属性和如下方法: 1. 缺省构造函数,将属性初始化为0,并输出"Data's default constructor.&q ...
- Problem C: 类的初体验(III)
Description 定义一个类Data,只有一个double类型的属性和如下4个方法: 1. 缺省构造函数,将属性初始化为0,并输出“Initialize a data 0”. 2. 带参构 ...
- Problem B: 类的初体验(II)
Description 定义一个类Data,只有一个double类型的属性和如下3个方法: 1. 带1个参数的构造函数——初始化属性值为参数值. 2. double getValue()——获 ...
- Problem A: 类的初体验
Description 定义一个类Data,只有一个double类型的属性和如下3个方法: 1. void init(double d);——初始化属性值. 2. double getVal ...
- SpringCloud初体验:五、Sidecar 将 PHP 这类非 Java 生态语言的服务接入 Spring Cloud
先起一个 Sidecar 服务,一个PHP服务一个应用,和PHP服务部署在同一台机子,通过 localhost 访问,这样就解决了网络开销,相当于本地进程间调用 Sidecar 服务比较简单, 1.这 ...
- 聚合类新闻client初体验
初体验的产品:今日头条(ios3.6).百度新闻(ios4.4.0).ZAKER(ios4.4.5).鲜果(ios3.8.7).中搜搜悦(ios4.0.1).Flipboard(ios2.3.9) 1 ...
- Xamarin.iOS开发初体验
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0
- SignalR初体验
简介 ASP .NET SignalR[1] 是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信.什么是实时通信的Web呢?就是让客户端(Web页面)和服务器端可以 ...
- Scala 深入浅出实战经典 第66讲:Scala并发编程实战初体验
王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...
随机推荐
- SiteCore Experience Analytics-路径分析地图
路径分析地图 路径分析器是一个应用程序,允许您查看联系人在浏览网站时所采用的各种路径.您可以查看联系人在转换目标并与广告系列互动时所采用的路径,让您深入了解哪些路径为每次转化提供最佳参与价值,以及哪些 ...
- Mysql模糊查询like效率,以及更高效的写法
在使用msyql进行模糊查询的时候,很自然的会用到like语句,通常情况下,在数据量小的时候,不容易看出查询的效率,但在数据量达到百万级,千万级的时候,查询的效率就很容易显现出来.这个时候查询的效率就 ...
- idea下maven下载插件慢问题
在pom.xml中添加maven 依赖包时,我就发现不管是否用了FQ,下载速度都好慢,就1M的东西能下半天,很是苦恼,于是到网上搜资料,然后让我查到了.说是使用阿里的maven镜像就可以了.我于是亲自 ...
- LeetCode169 求众数
题目链接:https://leetcode-cn.com/problems/majority-element/ 给定一个大小为 n 的数组,找到其中的众数.众数是指在数组中出现次数大于 ⌊ n/2 ⌋ ...
- [转载]get、post异同
1. get是从服务器上获取数据,post是向服务器传送数据. 2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过 ...
- 服务器日志文件Web远程查看
公司买的一款企业应用软件,所有透过应用操作DB的操作都会生成有日志,日志是以文本文件的形式存放在服务器上,后缀名为*.log.1,*.log.2之类的,软件本身也提供功能查询这些日志,但这个查询的功能 ...
- js数字转换成财务金额
function dealNumberToMoney(money){ var fmtAmt = ""; if(money&&money!=null){ money ...
- 1、Kafka介绍
1.Kafka介绍 1)在流式计算中,Kafka一般用来缓存数据,Storm通过消费Kafka的数据进行计算. 2)Kafka是一个分布式消息队列. 3)Kafka对消息保存时根据Topic进行归类, ...
- Tomcat的overview界面说明
Tomcat的overview界面说明 一.Tomcat的overview界面 双击或者open,进入Tomcat的overview界面, 一般情况workspace的子路径为.metadata.pl ...
- The Guideline of Setting Up Samba Server on linux(Ubuntu)
The Guideline of Setting Up Samba Server on linux(Ubuntu) From terminate command window, install the ...