1、类定义的基本形式
class 类名 { private: 私有的数据成员定义 私有成员函数 public: 公共成员函数 };
如:
class computer { private: //私有成员列表 char brand[20]; float price; public: //公有成员列表(访问接口) void print(); void SetBrand(char *sz); void SetPrice(float pr); }
上面定义了一个Computer类,private数据成员只能由类内的函数访问,而public数据成员可以在类外部访问,作为外部访问接口。
2、类的实现
- 成员函数在类定义时定义
class computer { private: //私有成员列表 char brand[20]; float price; public: //公有成员列表(访问接口) void print() { cout<<"品牌:"<<brand<<endl; cout<<"价格:"<<price<<endl; } void SetBrand(char *sz) { strcpy(brand,sz); } void SetPrice(float pr) { price=pr; } }
- 成员函数在类定义的外部定义
成员函数在类定义的外部定义时,应使用作用域操作符::来标识函数所属的类,如下形式所示:
函数返回类型 类名::成员函数名(参数列表)
{
函数体
}
首先创建一个头文件“classdemo.h”,用来定义类
class computer { private: char brand[20]; float price; public: void print(); void SetBrand(char *sz); void SetPrice(float pr); };
再创建classdemo.cpp文件,在其中定义成员函数,如下:
#include "classdemo.h" //包含Computer类定义 #include<iostream> #include<cstring>. using namespace std; void computer::print() //类成员函数的外部实现(注意域操作符::) { cout<<"品牌:"<<brand<<endl; cout<<"价格:"<<price<<endl; } void computer::SetBrand(char *sz) //类成员函数的外部实现(注意域操作符::) { strcpy(brand,sz); } void computer::SetPrice(float pr) //类成员函数的外部实现(注意域操作符::) { price=pr; }
3、类的实现
项目解决方案如下:
文件classdemo.h与classdemo.cpp如上所述
shili.cpp文件如下:
#include "classdemo.h" //包含computer类 #include<stdlib.h> int main() { computer com1; com1.SetBrand("Lenovo"); com1.SetPrice(5000); com1.print(); system("pause"); }
结果如下: