- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Object-Oriented Programming
Abstraction(数据抽象)
Encapsulation hidden implementation 封装性
Object
State,Data,
Message, Method, Interface, Operation,Function
Type:
All objects of a particular type can receive the same messages.
Inheritanceolymorphism(多态性)
A Better C
// comments
/* */
//
Function Prototype
void *malloc size_t ;
The new delete Operators
char *p new char[3];
int *p new int[3];
Defining variables anywhere
int k;
k 5;
int m;
m k+6;
Reference
int k 8;
int m k;
Inline function
const
Object Oriented Programming
Abstraction
Encapsulation hidden implementation
object class
struct A
int k;
float b;
int GetK
return k;
;
A a;
a.k 555;
class A
private:
int k; //hidden implementation
float b;
public:
void SetK int k //member function
k k;
;
A a;
a.k 777; //. X
a.GetK
constructor initialization
destructor cleanup
class Stack
;
Inheritance
class Basic
;
class Derive1 : public Basic
;
Polymorphism
(多态性)
olymorphism
Overloading
function Overloading 函数重载
operator Overloading 操作符重载
class Complex
double m_r;
double m_i;
Complex double r 0.0,double i 0.0
m_r r;
m_i i;
void operator double r,double i
m_r r;
m_i i;
Complex operator+ const Complex c const
return Complex m_r+c,m_r, m_i+c,m_i ;
double GetR const
retur m_r;
double GetI const
retur m_i;
class ComplexPtr
Complex *m_ptr;
public:
ComplexPtr Complex c
m_ptr c;
const ComplexPtr operator Complex * const ptr
m_ptr ptr;
return *this;
Complex * operator- const
return m_ptr;
Complex operator *
return *m_ptr;
Complex operator[] int i
return m_ptr[i];
const Complex operator[] int i const
return m_ptr[i];
ComplexPtr operator++
m_ptr++;
return *this;
ComplexPtr operator++ int
m_ptr++;
return *this;
void main
Complex c 3,4 ;
ComplexPtr ptr c ;
cout ptr- GetR endl;
cout *ptr .GetR endl;
ptr new Complex[10];
您可能关注的文档
- 从_马氏文通_序_的两处误标说到顿号在古籍整理中的使用.pdf
- 高中物理公式整理大全(超齐全).pdf
- 德国国情整理(中德文版).doc
- 涤纶长丝织物吸湿排汗整理工艺的研究.pdf
- 化学必修2综合测评试题及详解.pdf
- 第一章至第五章会计法律制度讲义.doc
- 电子实验详解.ppt
- 会计职称考试知识点整理(精).pdf
- 短融、中票详解.ppt
- 货币银行学整理.pdf
- 人教版(2019)高中化学选择性必修2期末复习知识点考点提纲.docx
- 内科病人一般护理常规.pptx
- 山西宏达钢铁集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版附答案.docx
- 山西宏达钢铁集团有限公司校园招聘模拟试题附带答案详解及参考答案.docx
- 山西宏达钢铁集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版必考题.docx
- 山西宏达钢铁集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版完美版.docx
- 山西宏达钢铁集团有限公司校园招聘模拟试题附带答案详解一套.docx
- 山西宏达钢铁集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版带答案.docx
- 老年照顾技术练习题(含答案).docx
- 山西宏达钢铁集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版审定版.docx
文档评论(0)