类和对象(上)
1.面向过程和面向对象的初步认识
C语言是面向过程的,分析出求解问题的步骤,通过函数调用逐步解决问题。
C++是面向对象的,将一件事请拆分成不同的对象,靠对象之间的交互完成。
举个例子:
(设计一个外卖系统)
C语言面向过程:关注->点餐,配餐,送餐
C++ 面向对象 : 关注->商家,骑手,用户
2.类的引入
C语言中,结构体中只能定义变量(变量的集合)。
C++中,首先C++是兼容了C语言结构体的用法,并且在此基础上把struct升级成了类,结构体中除了变量还可以有函数。
struct Student
{
void PrintStudentInfo()
{
cout << _name << "" << _gender << "" << _age << endl;
}
char _name[20];
char _gender[3];
int age;
};
int main()
{
struct Student s;
return 0;
}
3.类的定义
class className
{
//类题:由成员函数和成员变量组成
};//要注意这里有分号
class是定义类的关键字;classname是类的名字;{} 中 是类的主体;另外注意类定义结束后有分号。
类中的元素称为类的成员;
类中的数据称为类的属性或者成员变量;
类中的函数成为类的方法或成员函数
类的两种定义方式
- 声明和定义全部放在类中,需要注意的是,成员函数如果在类中定义,编译器可能将其当成内联函数处理
class Person
{
public:
void showInfo()
{
cout << _name << "" << _sex << "" << _age << endl;
}
public:
char* _name;
char* _sex;
int _age;
};
- 声明在 .h 文件中,定义在 .cpp 文件中
//.h
class Person