把析构函数设为私有,可以让类只能通过new来创建对象。
因为直接创建类对象是分配栈空间的,编译器会检查析构函数,如果是私有就不会栈上分配内存。这样只能通过new在堆上创建对象。
自动变量
自动变量,只在定义它们的时候才创建,在定义它们的函数返回时系统回收变量所占存储空间。对这些变量存储空间的分配和回收是由系统自动完成的。一般情况下,不作专门说明的局部变量,均是自动变量。自动变量也可用关键字auto作出说明
因为直接创建类对象是分配栈空间的,编译器会检查析构函数,如果是私有就不会栈上分配内存。这样只能通过new在堆上创建对象。
自动变量,只在定义它们的时候才创建,在定义它们的函数返回时系统回收变量所占存储空间。对这些变量存储空间的分配和回收是由系统自动完成的。一般情况下,不作专门说明的局部变量,均是自动变量。自动变量也可用关键字auto作出说明