⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 14-15.txt

📁 《C/C++完美演绎》源代码
💻 TXT
字号:
/* 范例:14-15 */
#include <iostream.h>

class A
{
  private:
    int a;

  public:
    A()		/* 构造函数名称必须与类名称相同 */
    {a=10;cout<<"我把成员变量a初始化了,a的值是"<<a<<endl;}
    ~A(){cout<<"deleted";getchar();}

};
void main()
{
  A obj1;	// 当在建立对象时会调用构造函数且只执行一次。
  
  /* 对象obj2的生命范围只在{}区块内 */
  {
    A obj2;	// 当在建立对象时会调用构造函数且只执行一次。
    obj2;	// 构造函数只在对象建立时执行一次,这里不会执行构造函数。
    cout<<"在对象ojb2被删除时会自动执行析构\n";
    cout<<"下面结束时将obj2的对象执行析构函数"<<endl;
  }		// 对象obj2在此释放
  cout<<"在对象ojb1被删除时会自动执行析构\n";
  cout<<"故在下面结束时将obj1的对象执行析构函数"<<endl;
}

程序执行结果:
我把成员变量a初始化了,a的值是10
我把成员变量a初始化了,a的值是10
在对象ojb2被删除时会自动执行析构
下面结束时将obj2的对象执行析构函数
deleted
在对象ojb1被删除时会自动执行析构
故在下面结束时将obj1的对象执行析构函数
deleted

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -