对象数组(初学)

2023-11-09

目录

一.什么是对象数组

二.定义对象数组

三.对象数组初始化

四.访问对象数组元素

五.new和对象数组


一.什么是对象数组

   所谓对象数组,指每一个数组元素都是对象的数组,
   即若一个类有若干个对象,把这一系列的对象用一个数组来存放。
   对象数组的元素是对象,不仅具有数据成员,而且还有函数成员

二.定义对象数组

  类名 数组名[元素个数];
  例如:
  Box a[3];//a是数组名 

三.对象数组初始化

   类名 数组名[元素个数]={}
   例如:
   Box a[3]={Box(),Box(15,18,20),Box(16,20,26)}; 
   Box(),Box(15,18,20),Box(16,20,26)表示三个类的对象 

四.访问对象数组元素

  通过下标访问 数组名[下标].成员名
  例如:
  a[1].volume( )
  表示将对象Box(15,18,20)三个数传入volume( )函数中

    代码举例 

#include<iostream>
using namespace std;
class Box
{
   private :
     int height;
     int width;
     int length;	
   public :
     Box(int h=10,int w=12,int len=15); 
     int volume( );
}; 
Box::Box(int h,int w,int len):height(h),width(w),length(len){}
//首先函数Box(int h,int w,int len)是属于类Box的函数 
//将传入的h,w,len值赋给height,width,length 
int Box::volume( )//::表示volume()函数是类的成员函数 
{
	return (height * width * length); 
}
int main( )
{
	Box a[3]={Box(),Box(15,18,20),Box(16,20,26)};
	cout<<"volume of a[0] is "<<a[0].volume( )<<endl;
	cout<<"volume of a[1] is "<<a[1].volume( )<<endl;
	cout<<"volume of a[2] is "<<a[2].volume( )<<endl;
}

五.new和对象数组

首先回顾以下:
   A *p;//定义了A类型的指针p
   p=new A(1);//new出来的是地址 
注意: 
A a[3]={*(new A(1)),*(new A(2)),*(new A(3))};
new A(1),new A(2),new A(3)是三个地址,通过*去取地址里面的值 
#include <iostream>
using namespace std;
class A
{
	int id;
public: 
	A(int i){
		id=i;
		cout<<id<<"--->构造函数"<<endl;	
	}	
	~A(){	
		cout<<id<<"--->析构函数"<<endl;	
	}	
}; 
int main(){
    A a[3]={*(new A(1)),*(new A(2)),*(new A(3))};
    cout<<"end of main"<<endl;
    return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对象数组(初学) 的相关文章

随机推荐

  • 【TensorFlow 入门】7、定义图变量的方法

    1 tf Variable tf Variable init initial value trainable True collections None validate shape True name None 参数名称 参数类型 参数含
  • DNS服务器列表

    Public DNS IPv4 地址 首选 119 29 29 29 AliDNS 阿里公共 DNS IPv4 地址 首选 223 5 5 5 备用 223 6 6 6 114 DNS 常规公共 DNS 干净无劫持 首选 114 114 1
  • SpringCloud---Sentinel

    文章目录 限流 sentinel使用环境搭建 设置限流 默认直接模式 关联模式 链路模式 关闭URL PATH聚合 熔断 降级 设置模拟环境 满调用比例规则 Sentinel 异常处理模式 异常处理 自定义异常处理 热点 测试热点环境搭建
  • 用mysqldump备份及结合binlog日志恢复的全过程

    1 查看更新备份时的数据 mysql gt select from t1 id 1 2 3 2 因为我的存储引擎是Myisam 为了保证数据的一直我加了参数 l 备份时不能对数据更新 如果是innodb引擎加参数 single transc
  • Speed up calculation by running in parallel

    原文链接 https perlmaven com speed up calculation by running in parallel In this example we have a bunch of numbers We need
  • Inception V1 V2 V3 V4

    最开始卷积的层数不断增加 后来开始修改卷积核的形式 一 二Inception V1 同一层级进行多尺度卷积 扩展了宽度 同时加强对小目标的检测能力 A 引入1 1的卷积是为了降维 降低通道维度 B 在中间层加入辅助损失 辅助损失只用于训练
  • fastCGI的安装和使用

    一 安装 1 先安装2个包 spawn fcgi 1 6 4 tar gz fcgi 2 4 1 SNAP 0910052249 安装 fcgi 2 4 1 SNAP 0910052249 报错 fcgio cpp In destructo
  • Git合并不同url的项目

    本文由云 社区发表 作者 工程师小熊 摘要 为了让项目能实现Git Gerrit Jenkin的持续集成 我们把项目从Git上迁移到了Gerrit上 发现有的同事在老Git提交代码 因为Gerrit做了同步 在Gerrit上有新提交的时候就
  • json文件格式详解

    json文件格式详解 JSON JavaScript Object Notation 是一种轻量级的数据交换格式 易于人阅读和编写 同时也易于机器解析和生成 它基于JavaScript Programming Language Standa
  • Latex排列图片:自由定义N行M列的排列方式

    首先导包 usepackage graphicx usepackage float usepackage subfigure 图片排成一行 begin figure htbp centering subfigure 图1 begin min
  • 【解决weditor报错】Local server not started, start with

    前言 大家在使用weditor查找元素的时候 经常会遇到 Local server not started start with 这个错误 下面是我个人的一些解决方法 供大家参考 原因1 浏览器问题导致 浏览器的原因导致的界面未刷新 我的就
  • 解决从GitHub下载文件时缓慢的问题

    我们知道 访问GitHub在国内的速度还算过得去 但是从GitHub上下载文件的速度就非常慢了 以下方法就是为了解决下载速度缓慢的 截止2019 9 5前测试有效 1 用记事本打开hosts文件 路径为C Windows System32
  • Mysql 实践(一):部署和安装

    1 目标 卸载centos自带的mysql 安装mysql 5 6 33 2 步骤 1 下载mysql 下载地址 http dev mysql com downloads mysql 5 6 html downloads 我们下载 这些包
  • 基于SSM框架的实验室开放管理系统

    系统功能结构设计 在分析并得出使用者对程序的功能要求时 就可以进行程序设计了 管理员功能结构图 管理员主要负责填充图书和其类别信息 并对已填充的数据进行维护 包括修改与删除 管理员也需要审核老师注册信息 发布公告信息 管理自助租房信息等 用
  • flutter初学之悬浮按钮

    期望 想实现一个悬浮在整个页面的悬浮按钮 实现1 用FloatingActionButton实现 新增悬浮按钮 Widget createFixedAddWidget ProductEntryState state Dispatch dis
  • linux环境下查看因内存占用过大被杀掉的进程

    文章目录 前言 查询方法 通过系统日志查找 通过dmesg命令查找 进程被杀的原因 总结 前言 最近发生两次游戏服务器进程突然消失的事件 查询日志上下文没有找到有用的信息 日志显示运行到某处戛然而止 此处代码逻辑简单 排除异常逻辑导致的服务
  • data_support/utlist(关于编译器的一些宏宏设置)

    ifndef UTLIST H tlist 权限查看程序 define UTLIST H define UTLIST VERSION 1 9 8 include
  • 灰度图像直方图均衡化公式及实现

    图像的直方图 直方图是图像中像素强度分布的图形表达方式 它统计了每一个强度值所具有的像素个数 直方图均衡化 是通过拉伸像素强度分布范围来增强图像对比度的一种方法 是图像处理领域中利用图像直方图对对比度进行调整的方法 均衡化指的是把一个分布
  • 华为手机发展史

    一 成立手机业务部 大家好 我是小码哥 今天我们来聊一下华为手机的发展史 作为国内乃至世界技术成熟大型互联网企业 已经成为国内市场不可缺失的一部分 华为由任正非在1987年创办的 至今已有34年 华为最初是做交换机起家 随着互联网的发展 华
  • 对象数组(初学)

    目录 一 什么是对象数组 二 定义对象数组 三 对象数组初始化 四 访问对象数组元素 五 new和对象数组 一 什么是对象数组 所谓对象数组 指每一个数组元素都是对象的数组 即若一个类有若干个对象 把这一系列的对象用一个数组来存放 对象数组