|
阅读:961回复:8
[万贤美文] 之 一个小疑问#include <iostream> using namespace std; class Tree { int height; public: Tree(int initialHeight); ~Tree(); void grow(int years); void printsize(); }; Tree::Tree(int initialHeight){ height = initialHeight; } Tree::~Tree(){ cout<<"inside Tree destructor"<<endl; printsize(); } void Tree::grow(int years){ height += years; } void Tree::printsize(){ cout<<"Tree height is "<<height<<endl; } int main(){ cout<<"befor 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"<<end; } ############################################ 下面是程序输出结果 befor opening brace after Tree creation Tree height is 12 befor closing brace inside Tree destrcutor Tree height is 16 after closing brace ######################################## 程序很简单就是建立了个构造函数与析构函数 万贤君出现一个疑问~ 为什么要在/* cout<<"before closing brace"<<endl */这行代码后才进行析构函数/* ~Tree() */的运行呢??还有就是/* t.grow(4) */是不是应该运行在/* cout<<"before closing brace"<<endl */之前啊? 此段代码来自TIC2vone没有进行编译测试,TIC2vone应该不会有问题吧? |
|
|
2C#
发布于:2006-01-14 23:47
Re:[万贤美文] 之 一个小疑问
天~
你也研究这个? |
|
|
|
3C#
发布于:2006-01-14 23:57
Re:[万贤美文] 之 一个小疑问
有前途
印院的计算机专业就靠你了! 现在计算机专业的学生都在忙着研究War3 至于编程嘛不是不想学,实在是忙呀 |
|
|
|
4C#
发布于:2006-01-15 09:06
Re:[万贤美文] 之 一个小疑问
int main()
{ { // 这个大括号是我加的,我觉得这里应该有 cout<<"befor opening brace"<<endl; Tree t(12); cout<<"after Tree creation"<<endl; t.printsize(); t.grow(4); // 这里只是加了4,但没有输出 cout<<"before closing brace"<<endl; } // t 的生存期就到这里,所以在这里的时候被销毁,析构函数里输出了 height 的值 cout<<"after closing brace"<<end; } [ 2006-01-15 09:07:28 松柏 修改 ] |
|
|
|
5C#
发布于:2006-01-15 11:39
Re:[万贤美文] 之 一个小疑问
越看越晕~
不懂... 走人~ |
|
|
|
6C#
发布于:2006-01-15 15:15
Re:[万贤美文] 之 一个小疑问
哦,谢谢松老大~
我是忘了加一个 { 是夹在cout<<"befor opening brace"<<endl下面一行的,意思都一样 |
|
|
7C#
发布于:2006-01-15 15:33
Re:[万贤美文] 之 一个小疑问
题目有点不大习惯!!! |
|
|
|
8C#
发布于:2006-01-16 14:22
Re:[万贤美文] 之 一个小疑问
天啊
好深奥了 白学了二年计算机 嘻嘻:) |
|
|