3.1类与对象的定义 此处的符号叫作用域运算符,用它来指明哪个函数属 于哪个类或哪个数据属于哪个类,所以使用类中成员的全 名是:类名∷成员名。 而如果没有类名,则为全局数据或全局函数(非成员函 数)也就是说类名是其成员名的一部分。 如 class record i private char bookname 20 int number public void regist(char*a,intb);∥成员函数 regist的原型 void showO;∥成员函数sow的原型 };∥定义图书类 Record U回
返回 11 3.1 类与对象的定义 此处的::符号叫作用域运算符,用它来指明哪个函数属 于哪个类或哪个数据属于哪个类,所以使用类中成员的全 名是:类名::成员名。 而如果没有类名,则为全局数据或全局函数(非成员函 数),也就是说类名是其成员名的一部分。 如 class Record { private: char bookname[20]; int number; public: void regist(char *a,int b);//成员函数regist的原型 void show(); //成员函数show的原型 }; //定义图书类Record
31类与对象的定义 void record:regs(char* a int b)/ registo是类 Record的 ∥成员函数 i strcpy (bookname, a) number void record:show(∥/ showO是类 Record的成员函数 cout<名称:”< cbooknames<endl; cout<<号码:”<< number<<end;} 此外,目前开发程序的通常将类的定义写在一个头文 件(h文件)中,成员函数的定义写在一个程序文件 cpp文件)中,这样,就相当于把类的定义(头文件) 看成是类的外部接口,类的成员函数的定义看成类的内 U回
返回 12 3.1 类与对象的定义 void Record::regist(char *a,int b) //regist()是类Record的 //成员函数 { strcpy(bookname,a); number=b; } void Record::show() // show()是类Record的成员函数 { cout<<”名称:”<<bookname<<endl; cout<<”号码:”<<number<<endl; } 此外,目前开发程序的通常将类的定义写在一个头文 件(.h文件)中,成员函数的定义写在一个程序文件 (.cpp文件)中,这样,就相当于把类的定义(头文件) 看成是类的外部接口,类的成员函数的定义看成类的内
3.1类与对象的定义 部实现。如:对上例可改成将类的定义体写在 myapp. h文件 中,而成员函数的定义体写在另外一个文件 myapp. cpp中: / myapp. h文件 class record i private char bookname[20] int number public void regist(char *a, int b) void showO U回
返回 13 3.1 类与对象的定义 部实现。如:对上例可改成将类的定义体写在myapp.h文件 中,而成员函数的定义体写在另外一个文件myapp.cpp中: //myapp.h文件 class Record { private: char bookname[20]; int number; public: void regist(char *a,int b); void show(); };
3.1类与对象的定义 / myapp. cpp文件 include“ iostream. h # include"myapp. h”/-定不要忘记嵌入该头文件 void record regist(char *a, int b) i strcpy(bookname, a) number=b void record:show cout<”名称:”< sbookname<endl cou<号码:”<< number<endl: U回
返回 14 3.1 类与对象的定义 //myapp.cpp文件 #include “iostream.h” #include “myapp.h” //一定不要忘记嵌入该头文件 void record::regist(char *a,int b) { strcpy(bookname,a); number=b; } void record::show() { cout<<”名称:”<<bookname<<endl; cout<<”号码:”<<number<<endl; }
3.1类与对象的定义 313对象的定义 对象是类的实例,定义对象的一般格式为: 类名变量名表; 或类名对象名 如:上例中已定义了类 Record,则: Record book1,book2;/此处的 book l book2就是 Record /类型,也就是类的两个对象 类是抽象的概念,而对象是具体的,类只是一种数据 类型,而对象是属于该类(数据类型)的一个变量,占 用了各自的存储单元,每个对象各自具有了该类的一套 数据成员(静态成员除外),而所有成员函数是所有对 象共有的。每个对象的函数成员都通过指针指向同 代码空间。 U回
返回 15 3.1 类与对象的定义 3.1.3 对象的定义 对象是类的实例,定义对象的一般格式为: 类名 变量名表; 或 类名 对象名; 如:上例中已定义了类Record,则: Record book1,book2; //此处的book1,book2就是Record //类型,也就是类的两个对象 类是抽象的概念,而对象是具体的,类只是一种数据 类型,而对象是属于该类(数据类型)的一个变量,占 用了各自的存储单元,每个对象各自具有了该类的一套 数据成员(静态成员除外),而所有成员函数是所有对 象共有的。每个对象的函数成员都通过指针指向同一个 代码空间