赞
踩
目录
这里用一个例子:我们都知道
- int a;
- /*这是申明整型变量a,
- 也可以a说这是一个类中的对象,
- 类是整型类,a是此类中的一个对象*/
上面是已经定义好了的固有类,而在这里我们所说的“类”就是可以自由定义特性的类。
- class T
- {
- public:
- void f(int a);
- private:
- int a;
- };
这就是我们重新定义 一个“类”,这个类的特性就是拥有一个整型参数,以及一个带参的函数 f()
类的实现可以使变量的特性更加丰富,可以起到简化程序的作用。
1.类的结构
*类名:类名一般由“class”来申明。
class print //print类名称
*类的内部结构:
包括:
“public”(公共部分):不受限制的访问和调用
“private”(私有部分):只有在类的内部的成员,或者友元才可以访问
“protect”(保护部分):类似“private”,只有类的内部成员以及友元或子类才可以调用
PS:1.友元即与原有的类是并列关系的函数,子类则是继承了原有类的新类。(这里不做深究)
2.友元的权限比子类高(你的兄弟比你的儿子重要)
- class print //“print”类名称
- {
- public://公共,一般为函数的接口
- void f(int a, int b);//函数,必须在类的内部声明,但是定义在内部和外部都可以进行 ,这是在内定义
-
- void g();
-
- void h();
-
- protected:
-
-
- private: //私有,仅在类的内部使用 ,相当于在类的内部的全局
- int a;
- int b;
- int c;
- };//记得最后的这个分号不能掉

以上就是完整的一个类的结构。
2.类中成员的的定义(一般针对类中函数的实现)
首先,函数的声明必须在类的内部进行,对于函数的定义有两种情况。
*直接在类中声明的同时就定义:
- class print //“print”类名称
- {
- public://公共,一般为函数的接口
- void f(int a, int b)//在内部进行定义,就是直接将函数完整的写在类的内部
- {
- c = a - b;
- }
-
- void g();
-
- void h();
-
- protected:
-
-
- private: //私有,仅在类的内部使用 ,相当于在类的内部的全局
- int a;
- int b;
- int c;
- };//记得最后的这个分号不能掉

上图中的函数 f(int a,int b).
*在类的外部定义 :
- void print::g()//格式:函数返回类型+类名+ :: +函数名+函数定义
- {
- cout << "c:" << c << endl;
- }
上图中的函数 g().
在主函数中如何进行对类的使用呢?
类似于结构体的使用
第一步:先声明类下的一个对象
print i;//在类下定义一个对象,也相当于变量 (这个类型变量包括整型变量以及函数)
第二步:调用已经声明对象下的函数(或变量)
- i.f(4, 5);//表示使用该类的对象下定义的一个函数
- 格式:对象名+ . +函数名
-
最后就可以构成完整的一个主函数。
- int main()
- {
- print i;//在类下定义一个对象,也相当于变量 (这个类型变量包括整型变量以及函数)
- i.f(4, 5);//表示使用该类的对象下定义的一个函数
- i.h();
- i.g();
- return 0;
- }
最后将完整实现的类呈现给友友们
- #include<iostream>
- using namespace std;
- class print //print类名称
- {
- public://公共,一般为函数的接口
- void f(int a, int b)//函数,必须在类的内部声明,但是定义在内部和外部都可以进行 ,这是在内定义
- {
- c = a - b;
- }
- void g();
-
- void h();
-
- protected:
-
-
- private: //私有,仅在类的内部使用 ,相当于在类的内部的全局
- int a;
- int b;
- int c;
- };//记得最后的这个分号不能掉
-
- void print::g()
- {
- cout << "c:" << c << endl;
- }
-
- void print::h() //外部定义格式:返回类型+类的名称+"::"+函数的定义
- {
- c = c * 2;
- }
-
- int main()
- {
- int a;
- int b;
- cin>>a>>b;
- print i;//在类下定义一个对象,也相当于变量 (这个类型变量包括整型变量以及函数)
- i.f(a, b);//表示使用该类的对象下定义的一个函数
- i.h();
- i.g();
- return 0;
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。