posts - 37, comments - 9, trackbacks - 0, articles - 0

c++学习笔记

Posted on 2006-06-25 13:35 飞翔 阅读(180) 评论(0)  编辑  收藏 所属分类: Java
class Teacher : public People
Teacher * t,tobj; People * p,pobj;

1.使用基类指针操作派生类对象。 p = &tobj;0只能访问定义于基类的共有成员。 必须将基类指针强制转换为派生类指针,才能访问派生类的成员。 (Teacher *) p-> ...
2.使用派生类指针操作基类对象 。 t = (Teacher *) &pobj ; 并且如此只能访问基类中的成员,不能访问派生类成员!

***********************************
虚函数(实现多态)
在基类中给方法加上virtual 标记,派生类实现该方法。
则使用时,采用基类指针指向具体子类对象的时候,即可以实现多台。通过指针调用的将是具体子类的改方法。

纯虚函数:
virtual double  method  const=0;   包含纯虚函数的类称为 抽象类!

类的析构函数应该被设置为虚析构函数


const Teacher t;//常量对象

void method const(){} //常量函数

常量对象不能调用非常量成员函数
常量函数不允许调用非常量成员函数。


**********

文件写对象
ofstream outFile("filename",ios::out| ios::binary);
outFile.write( (char *) &st,sizeof(st)); //st是一个类的对象
infile.read((char *)&st,sizeof(st)); //读取出对象

*******
throw 可以抛出任意类型的异常,比如 int a=0; throw a;
catch(...){ //捕获任意类型的异常
;
}

catch(int){
//捕获整型异常
}

********
函数模板
template <class T>
void sortArray(T b[],int len);
类模板:
template <class T>
class Test{
..
}
所以在类模板外面定义的成员函数都要以template <class T>开头

实例化类对象. Test <int> test;

只有注册用户登录后才能发表评论。


网站导航: