C++中的堆对象

#include <iostream>  
using namespace
 std;

class
 Tree 

public
:
    Tree(
int height) //this->

    { 
        cout
<<"tree object is creating"<<
endl; 
        
this->height =
 height; 
    }
    
~
Tree() 
    { 
        cout
<<"tree object is deleting"<<
endl; 
    }
    
void
 display() 
    { 
        cout
<<"this tree is "<<height<<" meters high"<<
endl; 
    } 
private
:
    
int
 height; 
};

void
 main() 

    Tree
*
 tree ;
    tree
= new Tree (100);//堆对象 

    tree-> display(); 
    delete tree; 

运行结果:

tree object is  creating
this tree is 100
 meters high
tree 
object is deleting

Tree 是定义的类
*tree 是指向这个类型的一个指针,但它现在是空的

new Tree(100) 是以堆对象建立一个类的实例,参数100初始化它,并让tree指向它


最后,用new建立的堆对象,当然也要用回收堆对象的delete清除,释放它占用的空间。

注意:Tree* tree = new Tree (100)调用下面的构造函数:

    Tree(int height) //this->
    { 
        cout
<<"tree object is creating"<<
endl; 
        
this->height =
 height; 
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值