C语言的类和对象

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言的类和对象

【类实现了C++面向对象程序设计的基础,我们使用类来定义对象的属性,类是

C++封装的基本单元。】

一、----- 类

使用关键字class创建类,一个类声明定义了一个连接代码和一个数据的新类型,这个新的类型又可以用来声明该类的对象。因此,类又是逻辑逻辑抽象概念,儿对象是物理存在的,也就是说对象是类的实例。

类的声明语法上和结构相似。

[一下是完整的类的形式]

class class_name

{

private data and functions

access_specifier:

data and functions

access_specifiter:

data and functions

//……..

access_specifier:是

data and functions

}object_list;

其中,object_list是任选项,如过存在,他声明类的对象。access_specifier为下面的三个关键字之一:

Public private protected

默认时,在类声明的函数和数据属于该类私有,只能被该类的成员访问。如果使用,pubilc访问限定符号,函数和程序就可以被其他部分访问。Protected访问限定符,仅在涉及继承的时候才需要(十五章了解)。访问限定符已经使用,其作用就保持到遇到别的访问限定符或者达到类声明的结束处。

在类声明内可以任意改变访问说明符号,对于某些声明,可以转换位public,然后再转换成private。

[如下所述]

/*******************************

··构造函数和析构函数学习···

*******************************/

//Using a constructor and destructor.

/*******************************

声明C++ 程序头文件

*******************************/

#include

#include

#include

#include

/*******************************

·名字空间:组织大型的程序结构·

*******************************/

using namespace std;

/*******************************

·····全局变量声明·····

/******************************/

#define SIZE 1024

/******************************* ················

/******************************/

class employee

{

char name[SIZE]; //private by deaulte public:

void putname(char *n);

void getname(char *n);

private:

double wage; //now,private again public:

void putwage(double w); //back to public

double getwage();

};

void employee::putname(char *n)

{

strcpy(name,n);

}

void employee::getname(char *n)

{

strcpy(name,n);

}

void employee::putwage(double w)

{

wage = w;

}

double employee::getwage()

{

return wage;

}

int main()

{

employee ted;

char my_name[1024] = "\0";

ted.putname("Yigao Wu\n");

ted.putwage(12000);

ted.getname(my_name);

cout << my_name << "makes $\n\n";

cout << ted.getwage() << "per year.\n";

cout << employee.wage << "per year.\n";

system("pause"); /*程序的停止按键提示*/ return 0;

}

【类内频繁使用访问限定符唯一优点是:通过把一个类各个部分可视的组织在一起,

可以使阅读程序者很好的阅读和理解,对于编译器没有什么区别。在类中声明的函数称之

为成员函数。成员函数可以访问类的所属的所有的任何成员(也称为实例变量),类的任

何元素都可被当做该类的成员。】

对于成员也有一些限制,非静态成员变量没有初值,成员不能成为当前正被声明声明

的类的对象(虽然一个成员可以是指向当前正被声明的类的指针)。成员不能声明为auto、extern或register。

可以使一个类的所有数据成员为该类私有,这是实现封装方法的一部分,然而有时候

也需要一个或者是几个为公有的(例如:为了获取较快的执行速度,频繁使用的变量是全

局可访问的)。一旦一个变量变成了公有的,在用户程序的所有的地方都可以访问这个变量,访问公有的数据的成员的语法与调用成员函数的语法是一样“:”指定对象名称,点运

算符和变量名称。

/*******************************

声明C++ 程序头文件

*******************************/

#include

/*******************************

·名字空间:组织大型的程序结构·

*******************************/

using namespace std;

/*******************************

·····

*******************************/

class employee

{

public:

int i,j,n,m;

};

int main()

{

employee em_one,em_two;

em_one.i = 1;

em_two.i = 2;

em_one.j = 3;

em_two.j = 4;

相关文档
最新文档