- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 例題:成員函數重載之應用 。 #include iostream using namespace std; class Area{ private: int radius; float area; public: void get_radius(); //無參數 void get_radius(int ); //單一參數 inline float list_area(); //inline之原型 }; void Area::get_radius( ) { cout 半徑=; cin radius; area = 3.14159 * radius * radius; } void Area::get_radius(int _radius) { radius = _radius; area = 3.14159 * radius * radius;} inline float Area::list_area() //inline函數 { return area;} void main(){ Area circle; //物件宣告 circle.get_radius(); //呼叫成員函數 cout 面積= circle.list_area(); cout endl; circle.get_radius(20); //傳初值 cout 半徑20之面積=“ circle.list_area() endl; } * 資料成員之初值 設定類別資料成員之初值有下面兩種: 以成員函數來設定 只要物件一產生就使資料成員歸零或設定在某一數值 * 成員函數設定初值 將類別名稱Area內之資料成員radius及area設為0 或某一初值,作法為: void Area :: init( ) { radius =0; area=0;} 或 void Area :: init(int _radius, float _area) { radius = _radius; area = _area;} 起始資料為(Area circle;) circle.init( ); 或 circle.init(0, 0); * 例題:物件初值之建立 。 #include iostream using namespace std; const float PI=3.14159; class Area{ private: int radius; float area; public: void init(); //無參數之啟始 void init(int,float); //啟始某一初值 inline float list_area(); //inline之原型 }; void Area::init(){ radius=0; area=0; } //清除資料 void Area::init(int _radius,float _area){ radius = _radius; area=_area; } //設定某一資料 inline float Area::list_area() //inline函數 { return area;} void main() { Area circle; //物件宣告 int _radius = 10; float _area=PI*_radius*_radius; circle.init(_radius,_area); cout 面積= circle.list_area(); cout endl; circle.init(); //清除資料 cout 面積= circle.list_area() endl; } * 12-6 建構子與解構子 可設定初值之成員函數稱為建構子(Constructor),建構子也可以攜帶參數,所以也有重載之特性,有了建構子自然也有解構子(Destructor) 。 建構子是一個特殊的成員函數,要定義建構子必需遵循下列兩個原則: 建構子的名稱需與所屬類別名稱相同,才能告訴編譯器這是建構子。 建構子不能傳回資料型態,因為它是系統自行呼叫,自然就不必傳回任何資料。 建構子之定義可定義在類別內部也可定義在外部。 * 解構子 解構子(Destructor)就是將建構子所配置記憶體釋放出來。 要自行定義解構子應注意: 解構子在一個類別只能有一個,名稱也需與類別名稱相同。 解構子必須在類別名稱前加上波浪型符號「~」。 解構子不可以有參數,也不可以傳回資料型態。 當物件消滅時會自動呼叫,請勿自行呼叫。 * 例題:以建構子完成初值之設定 。 #include iostream using namespace
您可能关注的文档
最近下载
- 全国计算机等级考试教程二级WPS Office高级应用与设计:为演示文稿添加效果PPT教学课件.pptx VIP
- 2023中国铁建股份有限公司所属单位岗位合集笔试备考题库及答案解析.docx VIP
- 中职物理考试题及答案.doc VIP
- DB21∕T 2449-2015 地理标志产品 西丰柞蚕丝.docx VIP
- 《居住空间设计》中级-多选230题(答案版).pdf VIP
- 智慧树 知到 大学生劳动就业法律问题解读(2024最新版) 章节测试答案.docx VIP
- 2025年菊花种植市场调查报告.docx
- 事业单位考试马克思主义哲学试题300道.pdf VIP
- 外墙保温及涂料施工方案样本.doc VIP
- 施工升降机基础及附着施工方案.docx VIP
文档评论(0)