Problem D: 类的初体验(IV)
Description
定义一个类Data,只有一个int类型的属性和如下方法:
1. 缺省构造函数,将属性初始化为0,并输出"Data's default constructor."。
2. 带参构造函数,将属性初始化为指定参数,并输出"Data # is created.",其中“#”即参数值。
3. 析构函数,输出:"Data # is erased.",其中“#”是属性值。
4. int getValue()——获得属性值。
5. void setValue(int)——设置属性值。
定义一个由Data的对象组成的数组类DataArray,包括:
1. 由10个Data类的对象组成的对象数组。
2. 缺省构造函数——不做任何操作,仅输出一行"DataArray's default constructor."。
3. void setValues(int d[10])——设置10个Data的对象的属性值分别为参数d的10个值。
4. int getSum()——求10个Data对象属性值的和。
5. 析构函数——输出一行"DataArray's deconstructor."。
Input
输入为11个int类型范围内的整数。
Output
见样例~~~
Sample Input
Sample Output
HINT
Append Code
int
main()
{
DataArray dataArray;
Data *aData;
int
data[10], tmp;
int
i;
for
(i = 0; i < 10; i++){
cin>>data[i];
}
dataArray.setValues(data);
cout<<
"Sum is "
<<dataArray.getSum()<<endl;
cin>>tmp;
aData =
new
Data(tmp);
cout<<
"aData = "
<<aData->getValue()<<endl;
delete
aData;
return
0;
}
using namespace std;
class Data
{
int a;
public:
Data():a(0){cout<<"Data's default constructor."<<endl;}
Data(int x):a(x)
{
cout<<"Data "<<a<<" is created."<<endl;
}
~Data()
{
cout<<"Data "<<a<<" is erased."<<endl;
}
int getValue()
{
return a;
}
void setValue(int y)
{
a=y;
}
};
class DataArray
{
Data array[10];
public:
DataArray(){cout<<"DataArray's default constructor."<<endl;}
void setValues(int d[10])
{
for(int i=0;i<10;i++)
{
array[i].setValue(d[i]);
}
}
int getSum()
{
int sum=0;
for(int i=0;i<10;i++)
{
sum+=array[i].getValue();
}
return sum;
}
~DataArray()
{
cout<<"DataArray's deconstructor."<<endl;
}
};
int main()
{
DataArray dataArray;
Data *aData;
int data[10], tmp;
int i;
for (i = 0; i < 10; i++){
cin>>data[i];
}
dataArray.setValues(data);
cout<<"Sum is "<<dataArray.getSum()<<endl;
cin>>tmp;
aData = new Data(tmp);
cout<<"aData = "<<aData->getValue()<<endl;
delete aData;
return 0;
}
Problem D: 类的初体验(IV)的更多相关文章
- Problem E: 类的初体验(V)
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
- .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
不知不觉,“.NET平台开源项目速览“系列文章已经15篇了,每一篇都非常受欢迎,可能技术水平不高,但足够入门了.虽然工作很忙,但还是会抽空把自己知道的,已经平时遇到的好的开源项目分享出来.今天就给大家 ...
- Spring之初体验
Spring之初体验 Spring是一个轻量级的Java Web开发框架,以IoC(Inverse of Control 控制反转)和 ...
随机推荐
- CSS 步骤进度条
;;; } .wizard li {;; text-align: center; line-height: 30px; height: 30px; background-color: #C3C3C3; ...
- String 常用方法
// 不会改变原字符串string.substring(startIndex, endIndex) —— 根据头尾位置返回一个字符串 string.substr(startIndex, length) ...
- PHP函数------parse_ini_file()
1.parse_ini_file()函数用于解析一个配置文件,并以数组的形式返回其中的设置. 举例说明:group.ini文件,文件内容如下: 0 = "Hleducation" ...
- oracle常用函数介绍
Oracle函数 Oracle SQL提供了用于执行特定操作的专用函数,这些函数大大增强了SQL语言的功能.函数可以接受零个或者多个输入参数,并返回一个输出结果.Oracle数据库中主要使用两种类型的 ...
- 51Nod 算法马拉松12 移数博弈
点进去发现并不是博弈QAQ 一开始考虑单调队列什么乱七八糟的发现根本做不出来 (没错我一直在想枚举最大值求次大值QAQ 不妨换个思路: 我们考虑枚举次大值求最大值 设当前为now, 设now之前第一个 ...
- centos7.3配置python2、3环境与配置各自pip
环境:CentOS-7-x86_64-Everything-1611 No.1 查看CentOS对Python的默认依赖 [root@cs ~]# ls /usr/bin/python* /usr/b ...
- P2365 任务安排 / [FJOI2019]batch(斜率优化dp)
P2365 任务安排 batch:$n<=10000$ 斜率优化入门题 $n^{3}$的dp轻松写出 但是枚举这个分成多少段很不方便 我们利用费用提前的思想,提前把这个烦人的$S$在后面的贡献先 ...
- 网站基础html javascript jquery
第二章HTML HBuilder的使用 边改边看模式 chrome浏览器看. HTML的基本格式 超文本标记语言 HyperText Markup Language HyperText 超文本 Mar ...
- Redis主主复制、主从复制
Redis主从复制(master-slaves配置)可以更好地读写分离 先关防火墙 主(master)服务器先不做任何操作, 进入从(slave)服务器, redis-3.2.1目录下的redis.c ...
- Mac OS X 清除DNS缓存
参考: Flushing your DNS cache in Mac OS X and Linux Mac OS X 清除DNS缓存 根据Mac OS X操作系统的版本选择以下命令: Mac OS X ...