首页 > 代码库 > 【ThinkingInC++】33、构造函数和析构函数的各种特征
【ThinkingInC++】33、构造函数和析构函数的各种特征
/** * 书本:【ThinkingInC++】 * 功能:构造函数和析构函数的各种特征 * 时间:2014年8月26日08:50:52 * 作者:cutter_point */ /* 构造函数和析构函数是没有返回值的。 析构函数:当对象超出他的作用域的时候,编译器将自动调用析构函数,但析构函数调用的 唯一证据是包含该对象的右括号,而且即使使用goto语句跳转析构函数任然被调用 */ #include<iostream> using namespace std; class Tree { int height; //私有成员,这棵树的高度 public: Tree(int initialHeight); //析构函数给数的高度赋初值 ~Tree(); //析构函数,会被自动调用 void grow(int years); //树的高度增加 void printsize(); //输出树的高尺寸 }; //Tree(int initialHeight); //析构函数给数的高度赋初值 Tree::Tree(int initialHeight) { height=initialHeight; } //~Tree(); //析构函数,会被自动调用 Tree::~Tree() { cout<<"inside Tree destructor"<<endl; void printsize(); //输出树的高尺寸 } //void grow(int years); //树的高度增加 void Tree::grow(int years) { height+=years; //每年增加一 } //void printsize(); //输出树的高尺寸 void Tree::printsize() { cout<<"Tree height is"<<height<<endl; } int main() { cout<<"before opening brace"<<endl; { Tree t(12); cout<<"after Tree creation"<<endl; t.printsize(); t.grow(4); cout<<"before closing brace"<<endl; } cout<<"after closing brace"<<endl; return 0; }
【ThinkingInC++】33、构造函数和析构函数的各种特征
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。