zoukankan      html  css  js  c++  java
  • 对象数组初始化 (10 分)

    6-10 对象数组初始化 (10 分)

    根据类定义,进行对象数组的定义,按照输出样例输出相应的数据。

    类定义:

    #include<iostream>
    using namespace std;
    class A{
        int data;
    public:
        A(int k=0){
            data=k;
        }
        void show(){
            cout<<"data="<<data<<endl;
        }
    };
    

    ###编写main函数,定义三个对象数组,完成指定的输出

    /* 请在这里填写答案 */
    

    输入样例:

    输出样例:

    在这里给出相应的输出。例如:

    data=0
    data=0
    data=0
    
    data=1
    data=0
    data=0
    
    data=1
    data=2
    data=3
    

    ac代码

    #include<iostream>
    using namespace std;
    class A{
        int data;
    public:
        A(int k=0){
            data=k;
        }
        void show(){
            cout<<"data="<<data<<endl;
        }
    };
    int main()
    {
    	/***第一次对象数组的构造***/
    	A A_L[3]={0,0,0};
    	/***第一次输出***/
    	for(int i=0;i<3;i++)
    	{
    		A_L[i].show();
    	}
    	/***换行符***/
    	cout<<endl;
    	
    	/***第二次对象数组的构造***/
    	A B_L[3]={1};
    	/***第二次输出***/
    	for(int i=0;i<3;i++)
    	{
    		B_L[i].show();
    	}
    	/***换行符***/
    	cout<<endl; 
    	
    	/***第三次对象数组的构造***/
    	A C_L[3]={1,2,3};
    	/***第二次输出***/
    	for(int i=0;i<3;i++)
    	{
    		C_L[i].show();
    	}
    	return 0;
    }
    

    错误代码

    #include<iostream>
    using namespace std;
    class A{
        int data;
    public:
        A(int k=0){
            data=k;
        }
        void show(){
            cout<<"data="<<data<<endl;
        }
    };
    int main()
    {
    	A A_L[3]={0,0,0};
    	/***第一次输出***/
    	for(int i=0;i<3;i++)
    	{
    		A_L[i].show();
    	}
    	cout<<endl;
    	A_L[0].data=1;
    	
    	/***第二次输出***/
    	for(int i=0;i<3;i++)
    	{
    		A_L[i].show();
    	}
    	
    	/***第三次输出***/
    	for(int i=0;i<3;i++)
    	{
    		A_L[i].A(i+1);
    		A_L[i].show();
    	}
    	return 0;
    }
    

    踩坑日记

    对象数组的初始化

    • 分两种情况
      1. 第一种,只有一个参数,直接简单的声明就行。
      2. 第二种,有多个参数,需要把多个参数包装到一起送给类。
    • 要观察好类是否有初始化(默认值)。

    对象数组:数组中每个元素为一个对象。

    在建立数组时,可以在定义数组时提供实参以实现初始化。

    1、如果构造函数只有一个参数,可以直接在等号后面的花括号内提供实参,如:

          Student stu【3】={10,20,30};
    

    2、如果构造函数有多个参数,在定义时在花括号中分别写出构造函数名并在括号内指定实参。如下:构造函数有3个参数,分别代表学号,年龄,成绩,在定义时可以:

           Student stu【3】={
                                             Student(1001,18,80),
    
                                             Student(1001,18,80),
    
                                             Student(1001,18,80),
    
                                        };
    

    ————————————————
    版权声明:本文为CSDN博主「ukston_C」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/ukston_C/article/details/80202768

    构造函数

    • 构造函数调用一次就行,如果没有更改数据的接口那就重新申请新的对象数组。
  • 相关阅读:
    June. 26th 2018, Week 26th. Tuesday
    June. 25th 2018, Week 26th. Monday
    June. 24th 2018, Week 26th. Sunday
    June. 23rd 2018, Week 25th. Saturday
    June. 22 2018, Week 25th. Friday
    June. 21 2018, Week 25th. Thursday
    June. 20 2018, Week 25th. Wednesday
    【2018.10.11 C与C++基础】C Preprocessor的功能及缺陷(草稿)
    June.19 2018, Week 25th Tuesday
    June 18. 2018, Week 25th. Monday
  • 原文地址:https://www.cnblogs.com/BeautifulWater/p/14800136.html
Copyright © 2011-2022 走看看