1、类和对象
C++ 面向对象的一大特性为:封装、继承、多态。
C++认为万事万物都皆为对象,对象上有其属性和行为。
1)封装
封装是C++面向对象三打特性之一:
封装的意义:
将属性和行为作为一个整体,表现生活中的事物;
将属性和行为加以权限控制;
封装意义一:
在设计类的时候,属性和行为写在一起,表现事物。
语法:class 类名{访问权限:属性/行为};
#includeusing namespace std; //圆周率 const double PI = 3.14; //设计一个圆类,求圆的周长 //圆求周长的公式:2*PI*半径 //class 代表设计一个类,类后面紧跟着的就是类名称 class Circle { public: int m_r; double calculateZC() { return 2 * PI * m_r; } }; int main() { //通过圆类 创建具体的圆(对象) Circle cl; //给圆的对象 的属性进行赋值 cl.m_r = 10; cout << "圆的周长为:" << cl.calculateZC() << endl; system("pause"); }
设计一个学生类,属性有姓名和学号,可以给姓名和学号赋值,可以显示学生的姓名和学号。
#include#include using namespace std; //设计学生类 class Student { public: string m_Name; int m_Id; void showStudent() { cout << "姓名:" << m_Name << "学号:" << m_Id << endl; } void setName(string name) { m_Name = name; } void setId(int id) { m_Id = id; } }; int main() { //创建一个具体学生 实例化对象 Student st1; //给st赋值对象 进行属性赋值操作 st1.setName ("张三"); st1.setId(38); //显示学生信息 st1.showStudent(); Student st2; st2.setName("李五"); st2.setId(31); st2.showStudent(); system("pause"); return 0; }
封装意义二:
类在设计是,可以把属性和行为放在不同的权限下,加以控制。
访问权限有三种:
1)、public 公共权限;
2)、protected 保护权限;
3)、private 私有权限;
#includeusing namespace std; //访问权限 //三种 //成员类内可以访问 类外部可以访问 class Person { public: string m_Name; protected: string m_Car; private: int m_Password; public: void func() { m_Name = "张山"; m_Car = "拖拉机"; m_Password = 123456; } }; int main() { Person p1; p1.m_Name = "李"; system("pause"); return 0; }



