码迷,mamicode.com
首页 > 编程语言 > 详细

【6】学习C++之类的实例化及访问

时间:2019-04-13 13:58:14      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:制造   color   for   方式   main   return   div   对象   class   

类就像一张图纸,如果不去实例化,制造出相应的零件,用处就不会那么大。

实例化类有两种,一个是从栈中实例化对象:

class TV
{
public:
    char name[20];
    int type;

    void changeVol();
    void power();
}

int main(void)
{
    TV tv;    //实例化一个对象
    TV tv[20];//实例化一组对象

    return 0;
}

另一个是从堆中实例化对象:

class TV
{
public:
    char name[20];
    int type;

    void changeVol();
    void power();
}

int main(void)
{
    TV *p = new TV();    //实例化一个对象
    TV *q = new TV[20];  //实例化一组对象
    delete p;
    delete []q;

    return 0;
}

这两种实例化后的对象的访问方式也是有所不同的,如果是从栈中实例化的对象的成员,访问用点(.)即可:

int main(void)
{
    TV tv;
    tv.type = 0;
    tv.changeVol();
    return 0;
}

如果是从堆中实例化的对象的成员,访问用箭头(->)即可:

int main(void)
{
    TV *p = new TV();
    p ->type = 0;
    p ->changeVol();
    delete p;
    p = NULL;
    return 0;
}

如果是从堆中实例化的一组对象的成员,则是额外需要for循环:

int main(void)
{
    TV *p = new TV[5];
    for(int i = 0;i<5;i++)
    {
        p ->type = 0;
        p ->changeVol();
    }
    delete []p;
    p = NULL;
    return 0;
}

 

【6】学习C++之类的实例化及访问

标签:制造   color   for   方式   main   return   div   对象   class   

原文地址:https://www.cnblogs.com/H2Rain/p/10700697.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!