C+语言程序设计 第5讲:C++程序的结构
C++语言程序设计 第5讲: C++程序的结构
构造函数 相当于;c1ock:c1ok(0)(houx= minute= second=0; 默认参数构造函数 hour 拷贝构造函数 Clock(int NewH, Clock(Clock& c)i private int hour int minute int second Clock:: Clock(int NewH, int NewM, int NewS) hour Newh: minute NewM; second News i Clock:: Clock(Clock& c) hour =c hour; minute c. minute second c second
构造函数 class Clock { public: Clock() : hour(0), minute(0), second(0) {} Clock(int NewH, int NewM=0, int NewS=0); Clock(Clock& c); private: int hour; int minute; int second; }; Clock::Clock(int NewH, int NewM, int NewS) { hour = NewH; minute = NewM; second = NewS; } Clock::Clock(Clock& c) { hour = c.hour; minute = c.minute; second = c.second; } 相当于:Clock::Clock() { hour = minute = second = 0; } 拷贝构造函数 默认参数构造函数
析构函数 class Clock public: Clocks void Setrime (int, intint)i void ShowTime()i 对象被删除的时刻自动调用 cock()严77 private int hour; int minut main() char* pbuf i Clock c;//构造 Clock:: Clock(i pbuf c. Setime(9,30,30); Clock: cLock o delete }//析构
析构函数 class Clock { public: Clock(); void SetTime (int, int, int); void ShowTime(); ~Clock(); // 析构函数 private: int hour; int minute; int second; char* pbuf; }; Clock::Clock() { pbuf = new char[128]; } Clock::~Clock() { delete[] pbuf; } 对象被删除的时刻自动调用 main() { Clock c; // 构造 c.SetTime(9,30,30); } // 析构
构造函数可使每个对象都有正确的初始 值 燥析构函数可使每个对象在结束时自动进 清理工作 析构函数的使用 个类只能有一个析构函数,不允许重载! 最先析构的是自动变量; 静态对象的生命期一直到程序结束;( static) 全局对象是最后被析构的
构造函数可使每个对象都有正确的初始 值 析构函数可使每个对象在结束时自动进 行清理工作 析构函数的使用 一个类只能有一个析构函数,不允许重载! 最先析构的是自动变量; 静态对象的生命期一直到程序结束;(static) 全局对象是最后被析构的
访问函数和工具函数 将类的函数分为两大类,访问函数和工具函数。 ●访问函数是供客户调用的,一般为 public 工具函数是为实现访问函数的某些功能而需要的 函数,一般为 private。 秦数据成员和成员函数的使用 数据一般设为私有成员,便于保护 需要用户设置的私有数据成员用get和set提供给 用户; ●要保证私有数据成员在任何时候都是有效的
访问函数和工具函数 将类的函数分为两大类,访问函数和工具函数。 访问函数是供客户调用的,一般为public。 工具函数是为实现访问函数的某些功能而需要的 函数,一般为private。 数据成员和成员函数的使用 数据一般设为私有成员,便于保护; 需要用户设置的私有数据成员用get和set提供给 用户; 要保证私有数据成员在任何时候都是有效的