一. 类的引入
我们知道,在C语言中,结构体的作用是把一些具有不同类型的变量组合在一起:
struct Student
{
char _name[20];
char _gender[3];
int _age;
};
可以说类的本质就是结构体。 而在C++中,其结构体中不仅可以定义变量,还可以定义函数。然后,用 “ class ” 来代替struct。
二. 类的定义
- C++ 类的定义
(可以说类是属性和行为的集合)
class classname
{
//成员变量
//成员函数
};
- 类的两种定义方式
(1)声明和定义全部放在类体中:(不推荐)
class Person
{
private://成员变量
char _name[20];
char _gender[3];
int _age;
public://成员函数
void showinfo()
{
cout << _name << endl;
cout << _gender << endl;
cout << _age << endl;
}
};
(2)定义和声明分开放(推荐使用) 即在头文件中,只去写上成员变量和成员函数的声明,而函数具体是干什么的,放在另一个文件中(.cpp文件) person.h
class Person
{
private:
char _name[20];
char _gender[3];
int _age;
public:
void showinfo()
};
person.cpp
#include "person.h"
void Person::showinfo() //用Person::的方式表示你属于哪个类
{
cout << _name << endl;
cout << _gender << endl;
cout << _age << endl;
}
注: ::为作用域符号,在别处使用类中的函数时,需要用作用域运算符声明,你属于哪个类下的函数
三. 实例化
- 类的实例化
类就像一个图纸,规定了一些基本信息(比如,房子的朝向是什么,材料是什么)。但是图纸终归是图纸,要想成为现实,就要真实建造一个房子。这就是”实例化“。 对于上述代码中,已写了声明和定义了的类Person,下面我们进行实例化: (p 即为实例化的实体。可以通过p.去调用类中定义的函数)
#include <iostream>
#include "person.h"
int main()
{
Person p;
p.show()
}
|