记录,待总结8

1. 传递数组的3种方式

1)void func(int a[]);

2)void func(int a[5]);

3)void func(int *a);

例:

输出:

1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10

2.字符数组的输入:

1)cin:以空格为字符串尾,不处理越界

2)gets:以换行为字符串尾,不处理越界

3)cin.get(数组名,长度,终止输入的限定符):长度 = 字符个数 + 1

 

3.重载[]的优点:

1)不用将数组长度定义为常量

2)可避免越界

 

4.基类的虚函数不进行实例化,就是抽象类。抽象类又叫ADT,它不能用来创建具体的对象

有纯虚函数的类都是抽象类

从抽象类派生出的新类必须为每个纯虚函数赋予功能,否则仍只是一个抽象类

不能定义一个抽象类的对象,只能定义一个指向抽象类的指针

指向抽象类的指针可以动态地指向其子类的对象,从而实现程序的多态

 

5.virtual float length() = 0;

像这个在虚函数后面加个“=0”,就是纯虚函数

纯虚函数彻底无任何功能,也不能直接调用,只能被子类继承并赋予新功能后才能使用

 

6.多态分为两种:

1)编译时的多态:通过函数重载实现

2)运行时的多态,通过虚函数实现

posted @ 2012-01-18 09:54  windmissing  阅读(139)  评论(0编辑  收藏  举报