1、stdio.husing namespace std;class studentpublic: int age;/这里定义类型的时候需要冒号: char* sex;/字符串可以采用这种方式定义 char* name;/这里定义完类后需要加一个分号/类中不能定义变量的值。/只有静态常量整型数据成员才可以在类中初始化int main(int argc, _TCHAR* argv) student tt;tt.age=18;tt.name=liming;tt.sex=malecouttt.agentt.sextt.namegetchar();4. 实现类的方法如果类中定义了方法,就需要在外面对他进行
2、实现,实现的方法是加“:” char *sex; char *name;int add(int a,int b);/定义了函数int student:add(int a, int b)/在类外面实现函数 return a+b;tt.add(3,4);5. 默认构造函数在类里面,写一个与类同名的方法,就称为构造函数。 student();/定义默认的构造函数student:student()/实现构造函数 age=10; sex=femal name=zhulei/调用默认的构造函数来定义对象。6.自定义构造函数:/默认构造函数 student(int a,char* s,char* n);/自
3、定义构造函数,也称为重载构造函数student()/实现默认构造函数student(int a, char *s,char* n)/重载构造函数 age=a; sex=s; name=n;/由默认构造函数来定义对象student dd(14,xiaohong);/由重载构造函数来定义对象。dd.agedd.sexdd.name7.析构函数:析构函数与构造函数是相对的,它是在对象被撤销后消除并释放所分配的内存,析构函数与构造函数同名,只是前面有一个“”号,析构函数没有返回值和参数,但也是需要实现的,但不需要写内容。系统在结束最后自动回调用析构函数的。 student();/析构函数student
4、()student() cout最后调用析构函数进行释放内存/getchar();8.继承class dog: public Animalclass+类名+:+访问限定符(public、private和protected)+父类名称。1) 访问限定符public:表示对于基类(父类)中的public数据和方法,在派生类中仍然是public,对于基类中的protected数据成员和方法,在派生类中仍然是protected.2) 访问限定符protected:表示对于基类中的public、protected数据成员和方法,在派生类中均为protected3) 访问限定符private:表示对于基类
5、中的public、protected数据成员和方法,在派生类中均为private.class Animal/基类 char* color; void move(); void Animal: move()/实现函数Dog is Moving public Animal/派生类继承于基类 dog(); void run();dog:dog()/实现默认构造函数name=xiaomingage=18;sex=color=redvoid dog:run()/实现函数dog is runingdog cdog;cdog.agecdog.colorcdog.namecdog.sexcdog.move()
6、;/派生类调用基类函数cdog.run();/派生类调用自身函数9.虚函数在函数前面加入virtual 关键字,就使该函数为虚函数。class Animal virtual void move();/虚函数10.纯虚函数:在虚函数的末尾加上“=0”,就是一个纯虚函数,纯虚函数可以只有声明,没有实现。一个类如果包含了纯虚函数,该类称为抽象类,我们只能从抽象类派生子类,不能声明抽象类对象,同时子类必须实现抽象类中的纯虚函数。 virtual void move()=0;/纯虚函数/在子类中实现基类的纯虚函数dog()move()/通过子类实现纯虚函数dog is moving11.多重继承在C+中
7、,允许一个类继承与多个基类,这很有用哦。class Birdclass Fish char* love; public Bird,public Fish/实现多重继承 int value;love=jiejievalue=10;cdog.lovecdog.value12.派生类调用两个基类中名字相同的方法:void Bird:move()Bird is movevoid Fish:Fish is move public Bird,public Fishcdog.Bird:move();cdog.Fish:/这时就需要具体说明调用哪一个类的方法。13.静态成员数据:是指其数据属于类,通过类名就可
8、以访问的成员数据。在声明时,只需要前面加入关键字static。静态成员数据可以由类名就可以直接访问。普通成员不能通过类名来访问,只能通过对象来访问。 static int age;int Fish:age=10;/直接通过类名来访问,不过前面要加数据类型名:int静态方法也是一样,但静态方法里面只能访问静态成员。14.友元素在类A中将类B声明为友元素,那么类B中就可以访问类A中的私有数据和方法了。友元关系不能传递,也不能继承。private:char* color;friend class Fish;/设为友元素Bird();Bird:Bird()/默认构造函数实现 color= Bird bird;/由类Bird来定义一个对象char* move(); Fish();char* Fish: return bird.color;Fish:Fish() love= age=18;Fish cdog;定义友元函数:friend char* Fish:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1