C++属性封装之初始封装

面向对象的基本思想:

以谁做什么来表达程序的逻辑,以对象为中心,对象的所有行为都通过调用自己的函数来完成。体现在代码层面就是数据成员调用自己的函数以及通过函数来对自己进行操作.

 

封装的好处:

1.可以在成员函数中做一些必要的限制

2.有时候确实不允许用户改变数据成员

3.对数据的封装一般用set来对函数赋值 get函数用来读取数据成员

 

1.类的写法一般是public写在前面,private写在后面

2.建议定义私有成员时命名为 m_数据类型+成员名

如:string m_strName 以便区分数据成员,知道数据成员是定义在类里面的

形参是_+成员名,如:voidgetName(string _name)

3.只读:初始化,只有get函数,不设置set函数。


#include<iostream>
#include<stdlib.h>
#include<string>

using namespace std;
/*
        数据的封装
    定义一个student类,含有如下信息:
    1.姓名 name
    2.性别 gender
    3.学分(只读) score
    4.学习 study
*/

class Student
{
public:
    void setName(string _name)
    {
        m_strName=_name;
    }
    string getName()
    {
        return m_strName;
    }
    void setGender(string _gender)
    {
        m_strGender=_gender;
    }
    string getGender()
    {
        return m_strGender;
    }
    int getScore()
    {
        return m_iScore;
    }
    void iniScore()
    {
        m_iScore=0;
    }
    void study(int _score)
    {
        m_iScore+=_score;
    }
private:
    string m_strName;
    string m_strGender;
    int m_iScore;
};
int main()
{
    Student stu;
    stu.iniScore();
    stu.setName("zhangsan");
    stu.setGender("女");
    stu.study(5);
    stu.study(3);
    cout<<stu.getName()<<","<<stu.getGender()<<","<<stu.getScore()<<endl;

    return 0;
}

zhangsan,女,8


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值