1、class代表要设计一个类,类后面紧跟着类名称
2、设计一个圆类,求圆的周长
2*PI*半径,半径是圆的属性,所以可以设计类
3、用函数表示他的行为
4、通过一个类创建一个对象,对象有属性和行为
5、类中的属性和行为,我们称之为成员,属性 成员属性 成员变量 行为:显示学号和姓名 成员函数
6、直接传参函数
void setName(string name)
{
m_name = name;
cout << "姓名: " << m_name << endl;
}
main函数中定义一个string name="初始化“
即可实现传参
7、封装意义二:类在设计时,可以把属性和行为放在不同的权限下,加以控制。
访问权限有三种:
1、public 公共权限 类内可以访问,类外可以访问
2、protected 保护权限 类内可以访问,类外不可以访问
3、private 私有权限 类内可以访问,类外不可以访
class Person
{
public:
string m_name;
protected:
string car;
private:
int m_password;
public:
void func()//上面是public,所以可以在类外访问,那么函数里面的3个输出都可以输出,虽然有的时保护权限,有的是私有权限
{
m_name = "zhangsan";//类内可以访问
car = "tuolaji";//类内可以访问
m_password = 123;//类内部可以访问
cout << m_name << endl;
cout << car << endl;
cout << m_password << endl;
}
};
Person p1;
p1.m_name = "123";
//car 保护权限的内容,在类外访问不到
p1.func();
8、struct和class的区别
struct默认的权限是public
class默认权限是private
9、类的结构
class Person
{
public:
string m_name;
protected:
string car;
private:
int m_password;
public:
void func()
{
m_name = "zhangsan";
car = "tuolaji";
m_password = 123;
cout << m_name << endl;
cout << car << endl;
cout << m_password << endl;
}
};
主函数调用:
Person p1;
p1.m_name = "123";
//car 保护权限的内容,在类外访问不到
p1.func();
10、成员属性设置为私有:
1、可以自己控制读写权限。比如通过函数实现只读,只写,或者读写功能
ps:只读,直接进行一个返回值,比如:
int getAge()
{
return m_age;
}//只读权限
main函数中:
cout << p1.getAge() << endl;
2、对于写可以检测数据的有效性
void setAge(int Age)
{
if (Age < 0 || Age>150)
{
cout << "错误" << endl;
return;//退出这个函数
}
m_age = Age;
}
3、因为我们定义的成员函数是公共权限,所以可以在main函数中调用,可以修改
4、应用:点和圆
(有点像struct)