C++走向远洋——42(项目二,我的数组类,深复制,构造函数)
*/
* Copyright (c) 2016,烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名:text.cpp
* 作者:常轩
* 微信公众号:Worldhello
* 完成日期:2016年4月24日
* 版本号:V1.0
* 问题描述:深复制,数组类
* 程序输入:无
* 程序输出:见运行结果
*/
#include<iostream>
#include<cstring>
using namespace std;
class MyArray{
private:
int *arrayAddr;
int len;
int max;
public:
MyArray(int *a,int n);
~MyArray();
int getValue(int i); //获得数组中下标为i的元素值
int getlen(); //返回数组长度
int getMax(); //返回数组中最大值
}; MyArray::MyArray(int *a,int n)
{
arrayAddr=new int[n];
max=a[0];
int i;
for(i=0;i<n;i++)
arrayAddr[i]=a[i]; len=n;
} int MyArray::getMax()
{
int i;
for(i=0;i<len;i++)
{
if(max<*(arrayAddr+i))
max=*(arrayAddr+i);
}
return max;
}
MyArray::~MyArray()
{
delete [] arrayAddr;
}
int MyArray::getlen()
{
return len;
}
int MyArray::getValue(int i)
{
return *(arrayAddr+i);
}
int main()
{
int b[10]={75,99,90,93,38,15,5,7,52,4};
MyArray r1(b,10);
cout<<"最大值:"<<r1.getMax()<<endl;
int c[15]={18,68,10,52,3,19,12,100,56,96,95,97,1,4,93};
MyArray r2(c,15);
int i,s=0;
for(i=0;i<r2.getlen();i++)
s+=r2.getValue(i);
cout<<"所有元素的和为:"<<s<<endl;
return 0;
}
运行结果;
心得:
在实现类的构造函数时,我仅仅把a首元素的地址赋值给了arrayddr,产生了错误,后来再知道每一个元素都需要单独分配空间
C++走向远洋——42(项目二,我的数组类,深复制,构造函数)的更多相关文章
- C++走向远洋——(项目二、存储班长信息的学生类、派生)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- C++走向远洋——43(人数不定的工资类,动态分配内存与释放)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- Eclipse+Maven创建webapp项目<二> (转)
Eclipse+Maven创建webapp项目<二> 1.开启eclipse,右键new——>other,如下图找到maven project 2.选择maven project,显 ...
- Vue小项目二手书商城:(四)详情页和购物车(emit、prop、computed)
实现效果: 点击对应商品,对应的商品详情页出现,详情页里面还有“Add to cart”按钮和“×”退出按钮. 点击“Add to cart”可以将商品加入购物车,每件商品只能添加一次,如果把购物车的 ...
- Vue小项目二手书商城:(三)前端渲染数据
实现内容: axios取到的数据在前端使用(父子组件各自应该怎么使用) 一.简单使用(在哪取在哪用) 1.在App.vue中script中加上data(data专属于当前组件,父子组件传参通过prop ...
- Vue小项目二手书商城:(二)axios前后端数据交互
实现内容: 写路由接口(express) axios取数据 一.写接口 1.我们要在前端取到后端的数据(之前写的data.json)可以用vue-resourse或者用axios,在vue2之后官方就 ...
- Vue小项目二手书商城:(一)准备工作、组件和路由
本项目基于vue2.5.2,与低版本部分不同之处会在(五)参考资料中提出 完整程序:https://github.com/M-M-Monica/bukesi 实现内容: 资源准备(mock数据) 组件 ...
- Eclipse+Maven创建webapp项目<二>
Eclipse+Maven创建webapp项目<二> 1.开启eclipse,右键new——>other,如下图找到maven project 2.选择maven project,显 ...
- crm 系统项目(二) admin 后台操作表格
crm 系统项目(二) admin 后台操作表格 1. app下创建 templates 运行的时候 先找全局的templates——> 按照app的注册顺序找templates中的文件 2. ...
随机推荐
- 在拖放文件的同时检测shift键的状态
老板要给原来文件拖放的功能加个扩展分类,于是想在文件拖放时判断shift键的状态来区分. 一般通过keydown和keyup来判断按下与否,但这都是需要控件事件触发,而在拖放的时候是没法触发key事件 ...
- 14 微服务电商【黑马乐优商城】:day04-项目搭建(一)
本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) day02-springcloud(理论篇一) ...
- ElasticSearch 分组查询
curl -XPOST 'localhost:9200/bank/_search?pretty' -d ' { "size": 0, "aggs": { &qu ...
- Pooled genome sequence strategies |representative genome assembly approaches|Domestication|GERP|selective sweep|Hybridization|Introgression|iHS|SNP genotyping arrays|haplotype
Design based on biology 通过比较基因组学的方法,将脊椎动物基因组的数据,解决生物学各方面问题.新的调控注释(在脊椎动物的进化过程中的出现的)可以丰富物种树(比如不同功能蛋白质进 ...
- MySQL报错解决:The MySQL server is running with the --read-only option so it cannot execute this statement
MySQL报错:The MySQL server is running with the --skip-grant-tables option so it cannot execute this st ...
- kubernetes flannel 网卡绑定错误,故障排查
kubernetes 新加了个node,状态Ready,但调度过去的任务,都执行异常 查看异常节点日志 `Error adding net work: open run/flannel/subnet. ...
- Relative-Frequency|frequency|pie chart |bar chart
2.2Organizing Qualitative Data The number of times a particular distinct value occurs is called its ...
- java中的赋值
java中的赋值使用符号“=”. 按照java编程思想的解释:它的意思是“取等号右边的值,把它复制给左边”. 当然左边必须是一个明确的,已命名的变量. 基本类型: int a=2; int b=3; ...
- TZOJ-STL系列题
C++实验:STL之vector #include <bits/stdc++.h> using namespace std; void Input(vector<int>&am ...
- Python爬虫之爬取站内所有图片
title date tags layut Python爬虫之爬取站内所有图片 2018-10-07 Python post 目标是 http://www.5442.com/meinv/ 如需在非li ...