当前位置:  编程技术>c/c++/嵌入式

C++中的对象数组详细解析

    来源: 互联网  发布时间:2014-10-21

    本文导语:  类是对象的抽象,我们可以使用一个类来定义很多的对象,然后每个对象都有自己的属性。 当我们使用类来定义很多相同结构的对象的时候,我们可以采取对象数组的方法。 例如,一个班有50个学生,我们定义了一个学生类,...

类是对象的抽象,我们可以使用一个类来定义很多的对象,然后每个对象都有自己的属性。

当我们使用类来定义很多相同结构的对象的时候,我们可以采取对象数组的方法。

例如,一个班有50个学生,我们定义了一个学生类,该类的学生具有相同的数据成员和成员函数,我们就可以定义一个这样的数组。

代码如下:

Student stdu[50];//假设已经声明了Student类,定义stud数组,有50个元素

======================对象数组的初始化=========================

在建立数组时,同样要调用构造函数。如果有50个元素,就需要调用50次构造函数。在需要的时候,可以在定义数组时提供实参以实现初始化。

如果构造函数只有一个参数可以这样初始化:

代码如下:

Studet stud[3]={60,70,80};//三个实参分别传递给3个数组元素的构造函数

如果构造函数有多个参数时,应该这样做:
代码如下:

Student stud[3]={//假设构造函数有3个参数
    Student(10,20,30),//调用第一个元素的构造函数,提供3个实参
    Student(40,50,60),//调用第二个元素的构造函数,提供3个实参
    Student(70,80,90) //调用第三个元素的构造函数,提供3个实参
};

在建立对象数组时,分别调用构造函数,对每个元素初始化。每一个元素的实参分别用括号括起来,对应构造函数的一组形参。

===================一个对象数组的例子=================

要求:建立一个对象数组,内放5个学生的数据(学号,成绩),设立一个函数max,在max函数中找出5个学生中成绩最高者,并出输出结果。

代码如下:

#include
 #include
 using namespace std;
 class Student
{
  public:
   Student(string , int );//声明构造函数
  void Print();//声明信息输出函数
  string num;
  int score;
};
 Student::Student(string n,int s)
{
  num=n;
  score=s;
 }
 void Student::Print()
{
  cout

    
 
 

您可能感兴趣的文章:

  • c++类对象初始化方式
  • C++对象池 C++ ResourcePool
  • c++类对象数组初始化方式
  • C++远程对象访问框架 ROXS
  • C++对象模拟测试 Turtle
  • C++里能不能在指定的一块内存中创建对象的实例?
  • C++中指向对象的常指针与指向常对象的指针详解
  • C++函数返回值为对象时,构造析构函数的执行细节
  • C++实现动态分配const对象实例
  • C++常对象精讲_const关键字的用法
  • 请教高手,C++返回类对象引用问题
  • 解析c++中参数对象与局部对象的析构顺序的详解
  • C++用new创建对象和不用new创建对象的区别解析
  • C++内核对象封装单实例启动程序的类
  • C++中四种对象生存期和作用域以及static的用法总结分析
  • C++中的常对象与常对象成员详解
  • C++中对象的常引用总结
  • C++临时性对象的生命周期详细解析
  • 深入c++中临时对象的析构时机的详解
  • C++中的函数指针与函数对象的总结
  • C++对象的动态建立与释放详解
  • 对象数组的构造函数调用问题
  • 对象数组直接造型的问题?
  • 菜鸟问题(对象数组):对于clsA []=new claA[10];语句执行后是否已经拥有了类clsA的10个实例对象,还是要再for i=0 to 9对clsA[i]=new clsA一下?
  • int类型的数组是对象吗?
  • php数组与对象转换小例子
  • c#泛型序列化对象为字节数组的示例
  • 如何判断一个数组对象的大小?
  • 奇怪:如何判断一个对象是不是数组
  • 如何创建对象数组
  • 急急急!!!请教一个关于对象数组的问题,在线等待
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 解析JSON对象与字符串之间的相互转换
  • Android 解析JSON对象及实例说明
  • Java中的String对象数据类型全面解析
  • Android天气预报之基于HttpGet对象解析天气数据的方法
  • jquery遍历筛选数组、遍历解析json对象的方法
  • jquery遍历筛选数组的几种方法和遍历解析json对象
  • Python namedtuple对象json序列化/反序列化及对象恢复
  • jquery对象和javascript对象即DOM对象相互转换
  • c#对象中两种copy操作:深拷贝(Deep Copy)与浅拷贝(Shallow Copy)
  • 请问如何把StringBuffer 的对象转化成一个InputStream 的对象,或者InputStream 子类的对象也可以!
  • php中检测变量是否是一个对象的is_object函数介绍及用法举例
  • 判断一个对象是否为jquery对象的方法
  • java tomcat实现Session对象的持久化原理及配置方法介绍
  • Glib对象系统(也称为"GObject")内部是如何实现面向对象特征的呢?
  • 将ResultSet结果集中的记录映射到Map对象中
  • 用RMI进行远程对象调用的时候,可不可以实现多个调用远程对象的并发操作
  • php 5.5.14数据对象(PDO)介绍及PDO的预定义常量介绍
  • 你们看是不是可以这样理解:在用来进行两个对象的比较时,==操作符用来比较两个对象的引用地址,而equals()用来比较两个对象的值。
  • 请问:能不能动态的运行时生成对象(动态定义对象), 要涉及到哪些技术, 反射,序列化...??
  • 重新编译PLSQL中的无效对象或者指定的对象 的方法
  • jquey笔记之dom对象与jquery对象互换的例子
  • 有人问我:何为面向对象编程?我给不出确切或形象的说法。谢!vb、pb等开发工具是不是面向对象编程的语言。
  • 写一个方法,向它传递一个对象,循环打印出对象层次结构中的所有类?thinking in java里面的一个习题不知道如何做请教高手?
  • php iis7站长之家
  • 我的APPLET在Jbuilder5中,可以调用EJB对象,但是移植到网页上却不能调用EJB对象!是何缘故,值得研究!
  • 各位高手知道在JAVA中如何用一个名称创建一个对象实例,并调用其方法,注意:在编写代码时并不知要创建的对象的类名,也并不知方法名
  • 1. 请问linux下可以使用“typedef list<对象*> 对象列表名 ”和iterator吗?




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3