C++封装篇 类对象的定义

1、对象的实例化

  在c++中类是一个模板,对象的实例化其实就是计算机根据一个类的设计制造出多个对象的过程。

  对象实例化有两种方式:

  •  从栈实例化
  •  从堆实例化

2、从栈实例化

class TV
{

    public:
    char name[20];//电视机的铭牌
    int type;//电视机的型号
    
    void changeVol();//音量调节
    void power();//电源控制
};

类名+对象

int main(void)

{

 TV tv;

 TV tv[20];

 return 0;

}

3、从堆实例化对象

int main()

{

int *p=new TV();

int *q=new TV[20];

delete p;

delete []q;//指定为数组内存的释放

return 0;

}

3、对象成员的访问

栈实例化对象成员的访问

int main()

{

TV tv;

tv.type=0;

tv.changeVol();

return 0;

}

堆实例化对象成员的访问

int main()

{

  TV *p=new TV();//声明一个指针,用来指向对象

  p->type=0;//指针指向对象的属性type

  p->changeVol();//指针指向对象的属性changeVol()

delete p;//用来释放申请的内存空间,以免造成内存泄漏

p=NULL;

return 0;

}

代码演示:

#include<iostream>
using  namespace std;

class Coordinate
{
    public:
    int x;
    int y;
    void printX()
    {
        cout<<x<<endl;
    }
    void printY()
    {
        cout<<y<<endl;
    }
};

int main(){
//栈访问
 Coordinate coor;
 coor.x=10;
 coor.y=20;
 coor.printX();
 coor.printY();
//堆访问
 Coordinate *p=new Coordinate();
 if(NULL==p)
   {
       return 0;//申请内存失败
   }
 p->x=100;
 p->y=200;
 p->printX();
 p->printY();
 delete p;
 p=NULL;
 return 0;
}

运行结果:

 

不忘初心,方得始终!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值