C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.

Slides:



Advertisements
Similar presentations
深圳市沙井中学:刘沅南制作. 1 、出生的小宝宝 ( 新生命)是怎么来的呢? 新生命都是从一个细胞 —— 受精卵发育而 来的。 2 、 受精卵又是如何产生的呢? 是精子和卵细胞相互结合产生的。
Advertisements

第三讲 面向对象(上).
JAVA 编 程 技 术 主编 贾振华 2010年1月.
移动应用软件开发技术 第二讲:C++编程基础
四資二甲 第三週作業 物件導向程式設計.
第九讲 类与对象 (I)面向对象基础.
设计模式可以帮助我们改善系统的设计,增强 系统的健壮性、可扩展性,为以后铺平道路。
類別與物件 Class & Object.
第八章 类和对象.
C++语言程序设计教程 第7章 类与对象 第7章 类与对象.
高级语言程序设计 主讲人:陈玉华.
内容提要 对象的生命周期 构造函数 析构函数 拷贝构造函数. 常宝宝 北京大学计算机科学与技术系
C++语言程序设计 第四章 类与对象 成都信息工程学院计算机系.
4.1 概述 4.2 类与对象的实现 4.3 对象的初始化和析构 4.4 类的包含 4.5 类模板
面向对象技术 练习2 ffh.
教材 《C++程序设计》.谭浩强. 清华大学出版社 王雪晶
刘胥影 东南大学计算机学院 面向对象程序设计1 2011~2012第3学期 刘胥影 东南大学计算机学院.
哈夫曼编码.
第六章 继承性和派生类 胡昊 南京大学计算机系软件所.
刘胥影 东南大学计算机学院 面向对象程序设计1 2010~2011第3学期 刘胥影 东南大学计算机学院.
西安交通大学 计算机教学实验中心 大学C++程序设计教程 西安交通大学 计算机教学实验中心
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
C#程序设计基础 $3 成员、变量和常量.
程序设计期末复习 黎金宁
C++语言程序设计教程 第7章 类与对象 第7章 类与对象.
第一章 C++编程简介 丘志杰 电子科技大学 计算机学院 软件学院.
第四章 小技巧.
软件学院 张 慧 清华大学软件学院.
第一部 上班族賺錢密碼.
谭浩强 编著 中国高等院校计算机基础教育课程体系规划教材 C++程序设计.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++大学基础教程 第11章 多态性 北京科技大学 信息基础科学系 2019/4/8 北京科技大学.
C++语言程序设计 C++语言程序设计 第五章 函数 第十一组 C++语言程序设计.
C#程序设计基础 $3 成员、变量和常量.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
C++复习2----类与对象.
Oop8 function函式.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
7.1 C程序的结构 7.2 作用域和作用域规则 7.3 存储属性和生存期 7.4 变量的初始化
第三章 数据抽象.
Object-Oriented Programming in C++ 第二章 类和对象
C++语言程序设计 C++语言程序设计 第八章 继承 C++语言程序设计.
C++大学基础教程 第10章 运算符重载 北京科技大学 2019/5/7 北京科技大学.
C++语言程序设计 C++语言程序设计 第十章 多态 第十一组 C++语言程序设计.
第二章 类型、对象、运算符和表达式.
C++程序设计基础 主讲人:谢昕 华东交通大学信息工程学院 第十~十二讲 多态性和虚函数 2005年春季学期.
第九章 物件導向-進階.
本节内容 函数嵌套调用的内存布局 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
授课老师:龚涛 信息科学与技术学院 2016年3月 教材:《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
挑戰C++程式語言 ──第9章 函數.
#include <iostream.h>
C++语言程序设计 C++语言程序设计 第八章 继承 C++语言程序设计.
新豐鄉.
谭浩强编著 C++面向对象程序设计 授课教师:姬广永 学习网站:
C++语言程序设计 C++语言程序设计 第十章 多态 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
《数据结构与算法设计》第一部分 面向对象的C++程序设计基础.
C# 匿名委派 + Lambda + Func 建國科技大學 資管系 饒瑞佶.
JAVA 程式設計與資料結構 第三章 物件的設計.
對於成員(member)存取權的限制 成員的資料被毫無限制的存取,任誰都可以指定任意值給成員,Java語言為了防止這種現象的產生,規定:有一種成員的資料不能任由類別外部的任何人隨意存取。
C++语言程序设计 C++语言程序设计 第十一章 异常处理 C++语言程序设计.
本节内容 在堆中创建对象 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
C++程序语言设计 Chapter 14: Templates.
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
第二章 Java基本语法 讲师:复凡.
資料結構與C++程式設計進階 C++與資料結構 講師:林業峻 CSIE, NTU 7/ 5, 2010.
隨機函數.
Presentation transcript:

C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计

“ 目录 C++语言程序设计 基本知识 编程技能 刨根问底 类和对象的定义 对象数组 this指针 构造函数 对象作为普通函数的参数与返回值 析构函数 面向对象程序设计 对象数组 对象作为普通函数的参数与返回值 对象指针和堆对象 this指针 复制构造函数 内部类和命名空间 C++语言程序设计

基本知识 a C++语言程序设计

7.1 类和对象的定义 类的实现 C++语言程序设计 类的成员函数描述的是类的行为或操作。 7.1 类和对象的定义 类的实现 类的成员函数描述的是类的行为或操作。 函数的原型声明要在类的主体中,而函数的具体实现一般写在类声明之外。 定义类的成员函数 成员函数可以访问本类的任意成员! 返回值类型 类名::成员函数名(参数表) { 函数体 } 作用域操作符 表示函数属于哪个类 C++语言程序设计

一般将类的实现单独写到扩展名为.cpp的原文件中 7.1 类和对象的定义 类的实现举例 //实现类成员函数的源文件:Clock.cpp #include "Clock.h" void Clock::SetTime(int newH,int newM,int newS)//SetTime()函数定义 { Hour=newH; Minute=newM; Second=newS; } void Clock::ShowTime() //ShowTime()函数定义 cout<<Hour<<":"<<Minute<<":"<<Second<<endl; 一般将类的实现单独写到扩展名为.cpp的原文件中 文件名同类的声明文件名一致 C++语言程序设计

7.1 类和对象的定义 类的成员函数还可以有多种形态——参数带默认值 class Clock { public: 7.1 类和对象的定义 类的成员函数还可以有多种形态——参数带默认值 class Clock { public: void SetTime(int newH=0,int newM=0,int news=0); void ShowTime(); private: int Hour; int Minute; int Second; }; C++语言程序设计

7.1 类和对象的定义 类的成员函数还可以有多种形态——函数实现直接放在类的声明中 class Clock { public: 7.1 类和对象的定义 类的成员函数还可以有多种形态——函数实现直接放在类的声明中 class Clock { public: void SetTime(int newH=0,int newM=0,int news=0); void ShowTime(){ cout<<Hour<<":"<<Minute<<":"<<Second<<endl; } private: int Hour; int Minute; int Second; }; C++语言程序设计

7.1 类和对象的定义 类的成员函数还可以有多种形态——函数重载 class Clock { public: 7.1 类和对象的定义 类的成员函数还可以有多种形态——函数重载 class Clock { public: void SetTime(int newH=0,int newM=0,int news=0); void ShowTime(){ cout<<Hour<<":"<<Minute<<":"<<Second<<endl; } void ShowTime(int n){ cout<<Hour<<“时”<<Minute<<“分”<<Second<<“秒”<<endl; } private: int Hour, Minute, Second; }; C++语言程序设计

声明了类及其对象,在类的外部就可以访问对象的公有成员了。 7.1 类和对象的定义 对象的定义和使用 对象,又称为类的实例 类的成员是抽象的,对象的成员才是具体的 类声明中的数据成员一定不能有具体的属性值 只有对象的成员才会有具体的属性值 声明了类及其对象,在类的外部就可以访问对象的公有成员了。 公有成员可以是数据成员,也可以是函数成员 定义一个对象和定义一个一般变量相同,语法形式为: 类名称 对象名称; C++语言程序设计

7.1 类和对象的定义 #include “Clock.h” void main() { Clock myclock; 7.1 类和对象的定义 #include “Clock.h” void main() { Clock myclock; myclock.SetTime(12, 5, 0); myclock.ShowTime(); } C++语言程序设计

7.1 类和对象的定义 类的作用域 类作用域是指类定义和相应的成员函数定义的范围,通俗地称为类的内部。 7.1 类和对象的定义 类的作用域 类作用域是指类定义和相应的成员函数定义的范围,通俗地称为类的内部。 C++认为一个类的全部成员都是一个整体的相关部分。 一个类的所有成员位于这个类的作用域内,在该范围内,一个类的成员函数对本类的其它成员具有无限制的访问权。 void Clock::SetTime(int newH,int newM,int newS)//SetTime()函数定义 { Hour=newH; Minute=newM; Second=newS; } C++语言程序设计

7.1 类和对象的定义 类的可见性 类名实际是个类型名,允许类与其他类型变量或其他函数同名。 7.1 类和对象的定义 类的可见性 类名实际是个类型名,允许类与其他类型变量或其他函数同名。 在类的内部,与类或类的成员同名的全局变量名或函数名不可见。 void func( ) { Clock a; //定义对象时要用到类名 int Clock=10; //变量名和类名相同 Clock++; //… }; int Clock( ){return 1;} //定义函数 class Clock{ //定义类 public : int f(){return Clock();} //调用函数错误 }; 从程序可读性考虑,一般不要让类名和其他变量、函数用同样的名字。 C++语言程序设计