6、面向实的体程序设计.pptx

  1. 1、本文档共135页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6、面向实的体程序设计

第6章 面向实体程序设计第6章 面向实体程序设计类和实体构造函数和析构函数实体指针和静态属性动态内存分配友元继承与派生运算符重载虚函数类和实体:例1 喵星人和汪星人属性方法string是字符数组,比char[ ] 方便,需要#includestring类:class Dog{public: string name; void cry() {coutBark;}};实体:Dog dog1;dog1.name=Max;dog1.cry();类:class Cat{public: string name; void cry() {coutMiaow;}};实体:Cat cat1, cat2;cat1.name=Tom;cat1.cry();cat2.name=Garfield;类和实体:例2 圆#include iostreamusing namespace std;class circle{public: double radius; double getArea() { return 3.14*radius*radius; }};int main(){ circle c1; c1.radius=5; coutc1.getArea(); return 0;}类类是面向实体程序设计的基础和核心,也是实现数据抽象的工具。类中的数据具有隐藏性和封装性,类是实现C++许多高级特性的基础。类的定义#include iostreamusing namespace std; class Test { private: //私有成员类外不能够直接访问 int s; public: //公有成员类外能够直接访问 void setSum(int x, int y) { s=x+y; } void print() { coutx+y=sendl; } }; int main() { Test t; t.setSum(3,8); //公有成员可以外部访问 t.print(); //公有成员可以外部访问 return 0;};类的定义开发人员通常把对象称为实体,数据成员称为属性,成员函数称为方法类的定义要以分号结尾类的属性和方法根据其访问权限分为私有、公有和保护型三种属性。class 类名 { private: 私有属性,私有方法 ; public: 公有属性,公有方法 ; protected: 保护型属性,保护型方法 ;}; 类内和类外访问权限的关系public/protected/private类内都能访问public类外可以访问,protected/private类外不能访问(除非设置友元函数)缺省访问权限为privatepublic/protected可以被派生类访问,private不能被派生类访问。(后面的知识)类定义的潜规则在不考虑protected和友元、继承的情况下属性只能为private,通过公有的set和get方法设置或者获取该属性的值。供外部调用的方法设为public,只供内部使用的方法设为private。类一般定义在main函数的外部#include iostreamusing namespace std;class CEmployee{ private: int age; public: void setAge(int value) { age = value; } int getAge() { return age; }};int main(){ CEmployee employee; employee.setAge(22); int age =employee.getAge(); return 0;}C++中class与struct的关系C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含多个数据类型的数据结构了,还能包含成员函数,可实现继承、多态。struct和class默认的访问权限:struct是public,class是private。除此之外两者等价。外联函数:在类外部定义方法内部定义class Cat{private: string name;public: void setName(string n) { name=n; } string getName() { return name; }};当类的方法众多,实现代码很长时,使用内部定义的类的可读性不高。外部定义class Cat{private: string name;public: void setName(string n); string getName();};void Cat::setName(string n){ name=n; }string Cat::

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档