- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
0、概述
1、结构化的程序设计、面向对象的程序设计的基本思想。结构化的程序设计将数据和对数据的操作分离,程序是由一个个的函数组成的面向对象的程序设计将数据和操作封装在一起,程序是由一个个对象组成的,对象之间通过进行通信,它能够较好地支持程序代码的复用。面向对象的程序设计有四大特征,它们是封装、继承、多态、抽象。 (1) ,
面向对象程序设计的程序模型可描述为 (2) 。
(1)“程序=算法+数据结构”。其数据与数据处理是分离的。
(2)程序=对象+对象+……+对象;对象=(算法+数据结构)。
注:
在C语言中,编程的单位是函数;而在C++语言中,编程的单位是类
C++语言对C语言作了很多改进,引进了类和对象的概念;使得C语言发生了质变,从面向过程变成了面向对象。interator)
迭代器是指针概念的泛型化,它指向容器中的元素,它能象指针一样增减,轮流指示容器中每个元素。所以说迭代器是面向对象版本的指针。
迭代器可以包括指针,但迭代器又不仅仅是一个指针。
迭代器类型变量的使用:
vectorint::iterator it; //it为向量中的迭代器
for( it=a.begin(); it!=a.end(); ++it ) cout*it ;
如:
iterator insert(iterator it,const Tx=T())//把元素x插入到it指向的元素之前
iterator erase(iterator it) //删除it指向的元素
iterator erase( iterator first, iterator last) //删除[first,last]范围指向的元素
引用类型作为:函数参数类型、函数的返回值类型(注意被引用的实体必须是存在)
函数重载和默认参数
注意:默认参数的规则:默认参数只能在声明时给出,无默认值的参数在前,有默认值的参数在后
二、类
要求:
掌握类定义、类成员的访问权限; this指针this指针当成员函数被调用时, this指针指向调用它的对象。return *this; 返回的是调用该成员函数的对象(或 对象引用)
常成员函数的使用; 成员函数的
注:常成员函数不的数据成员,也不能调用非const函数。class Example{
public:
Example(int y=10){data=y;}
int getData() const {return ++data?;} //常成员函数不的数据成员A{
int a,b;
public:
A(int aa, int bb=0);
};
A::A(int aa, int bb){a=aa; b=bb;}
静态数据成员和静态成员函数的和;#include iostream.h
using namespace std;
class CSample{
private:
int i;
static int k;
public:
CSample(){ i=0; k++;}
void Display(){couti=i,k=kendl;}
};
int CSample::k=0;//静态数据成员初始化在类外
void main(){
CSample a,b;
a.Display();
b.Display();
}
答: i=0,k=2
i=0,k=2
②
#include iostream.h
using namespace std;
class Sample
{
int A;
static int B;
public:
Sample(int a){A=a; B+=a;}
static void print(Sample s);
};
void Sample::print(Sample s)
{ coutA=s.A,B=Bendl; }
int Sample::B=0;
void main()
{
Sample s1(2),s2(5);
Sample::print(s1);
Sample::print(s2);
}
A=2,B=7
A=5,B=7
掌握友元(友元函数、友元类、友元成员函数的定义方法、作用和特点)
◇友元的正确使用能提高程序的运行效率,但破坏了类的封装性和数据的隐蔽性
如:若要把类Fclass定义为类MyClass的友元类,则应在类MyClass的定义中加入语句 friend class Fclass;
◇理解运算符重载的意义和作用、规则(见课件对Date类中运算符的重载),能对简单的类进行常用运算符(+、-、*、/、==、!=、、、、)的重载;
例:填上合适的语句,使程序的运行结果为200。
#includ
文档评论(0)