栈小,速度快,不需要删除对象,自动创建使用后在可见区丢失后自动删除 c#就是在栈上
堆大,速度慢,适合对象大,或者活动周期长,使用对象指针,需要delete ,java就是在堆上创建对象
栈上创建对象
void Function(){
Entity e;
....
}
堆上
Entity * e; //在堆上创建对象,则必须delete
{
e = new Entity("lanweifeng");
std::cout << e->GetName() << endl;
}//这个时候e还是没有消失,需要主动delete
delete e;