C++对象数组的实例学习
2014-05-30 10:05
211 查看
C++作为一种面向对象的语言,其面向对象的思维,我觉得非常重要,一直都在研究汇编和C语言,没有对象的观念,但是C++里面,对象思维,抽象思维其实是很有意思的,而且很有意义。
今天,我们来分析学习对象数组,对象数组从名字上分析,就是存放对象的数组,可能对于初学者来说,这是一个新词,但是对象数组很有用。
我们假设,学生是对象,对象的属性有ID和Score,那么如果班级里面有100个学生,那么每个对象都要用类进行实例化的话,那真是太恐怖了,此时,C++的对象数组就该上场了,一个数组直接搞定是不是很方便呢?
唯一要注意的事情是:
要创建对象数组,必须要有默认构造函数,但是如果我们声明了一个构造函数,默认构造函数系统不会给,所以,我们得显式给出默认构造函数!!
--------------------我是分割线,下面用代码说明-----------------
效果图:
![](http://s3.51cto.com/wyfs02/M01/2B/69/wKiom1OH6EiAmFavAACoydYWfOM548.jpg)
----------------------------------------------------------------------------------------------
手工敲一遍,理解更深刻!!!
加油!!
----------------------------------------------------------------------------------------------
今天,我们来分析学习对象数组,对象数组从名字上分析,就是存放对象的数组,可能对于初学者来说,这是一个新词,但是对象数组很有用。
我们假设,学生是对象,对象的属性有ID和Score,那么如果班级里面有100个学生,那么每个对象都要用类进行实例化的话,那真是太恐怖了,此时,C++的对象数组就该上场了,一个数组直接搞定是不是很方便呢?
唯一要注意的事情是:
要创建对象数组,必须要有默认构造函数,但是如果我们声明了一个构造函数,默认构造函数系统不会给,所以,我们得显式给出默认构造函数!!
--------------------我是分割线,下面用代码说明-----------------
# include <iostream> # include <string> using namespace std; const int Objarr_Number = 5; class Student { public: Student(string, int);//构造函数 Student(); //默认构造函数一定要有 void Print(); //声明输出函数 string ID; int score; }; Student::Student(string s, int n) { ID = s; score = n; } void Student::Print() { cout << "ID : "<< ID << " " << "Score: "<< score << endl; } int main(void) { Student stud[Objarr_Number] = { Student("001", 90), Student("002", 94), Student("003", 70), Student("004", 100), Student("005", 60), }; int max = stud[0].score; int i = 0; int k = 0; cout << "ID " << "\t" << "Score "<< endl; for(i = 0; i< Objarr_Number; i++) { //输出对象数组的值 cout << stud[i].ID <<"\t" << stud[i].score << endl; //以成绩来进行比较 if(stud[i].score > max) { k = i; max = stud[i].score; } } cout <<"-----------------------------"<<endl; cout << "The Max Score is " ; //输出最大的学生的成绩 stud[k].Print(); cout << endl; return 0; }--------------------我是分割线-------------------------------------------
效果图:
![](http://s3.51cto.com/wyfs02/M01/2B/69/wKiom1OH6EiAmFavAACoydYWfOM548.jpg)
----------------------------------------------------------------------------------------------
手工敲一遍,理解更深刻!!!
加油!!
----------------------------------------------------------------------------------------------
相关文章推荐
- C++学习笔记(六)-- 类和对象 构造函数和析构函数 const成员函数 this指针 对象数组 堆栈管理变量
- C++学习之对象数组篇
- java学习(12)对象数组初始化 java与C++的区别
- C++ 学习之路(2):对象数组和指针
- JNI学习笔记 C++传递结构体、String、数组对象给JavaC++传递结构体、String、数组对象给Java
- C++学习笔记 数组对象
- C++学习记录(20180302)(2个实例+数组学习)
- C++学习笔记21 多态遇上对象数组
- 设计模式C++学习笔记之二十(完结篇 & 面向对象原则)设计模式C++实例下载
- C++学习(六)——类的学习—PhoneList对象数组程序示例
- 【C++基础学习】成员对象与对象数组
- C++学习(构造函数与析构函数、对象数组与对象指针)
- C++的CString对象实例学习
- 《面向对象基础:C++实现》学习笔记之四
- c++入门学习笔记--类和对象
- 《面向对象基础:C++实现》学习笔记之七
- 深入C++对象模型学习笔记 第3章 Data 语意学
- 学习《深入理解C++对象模型》小结
- C++学习笔记之(对象复制的困惑)
- c++入门学习笔记--类和对象