成员变量的值

访问功能

访问函数是一个短的公共功能,其工作是返回私有成员变量的值。例如,在上述的String类,你可能会看到这样的东西:

1
2
3
4
5
6
7
8
9
class String
{
private:
    char *m_chString; // a dynamically allocated string
    int m_nLength; // the length of m_chString
 
public:
    int GetLength() { return m_nLength; }
};

getlength()是访问函数简单地返回m_nlength价值。

访问功能,通常有两种:getters和setters。干将是函数简单地返回私有成员变量的值。制定功能,只需设置一个私有成员变量的值。

这里有一个例子类,具有一定的getters和setters:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Date
{
private:
    int m_nMonth;
    int m_nDay;
    int m_nYear;
 
public:
    // Getters
    int GetMonth() { return m_nMonth; }
    int GetDay() { return m_nDay; }
    int GetYear() { return m_nYear; }
 
    // Setters
    void SetMonth(int nMonth) { m_nMonth = nMonth; }
    void SetDay(int nDay) { m_nDay = nDay; }
    void SetYear(int nYear) { m_nYear = nYear; }
};

为什么要提供公共访问的功能,它使一个成员变量的私人?答案是:“封装”。

封装

例如,你的电视遥控器提供的按钮,让你做的事情一样,把你的电视和关闭和调整音量。然而,如何实现远程实际上是隐藏。这很有用,因为它允许你使用远程无需担心的细节为什么它或它是如何实现的。这很有用,因为它允许你使用远程无需担心的细节为什么它或它是如何实现的。如果侏儒闯入你的房子在半夜,用新的替换你的电视遥控器内部的(但兼容)的技术,你可能没有注意到的。

封装的思想是隐藏的细节如何实现而暴露给用户一个接口。这允许用户使用的项目,而不必担心如何实施。

在C++中,访问说明符允许我们在我们的类实现封装。这通常是通过一类的私有成员变量,并提供公共职能(经常访问函数)允许用户与班主任工作。虽然这可能似乎比直接向公众提供更多负担,事实上这样做提供了一些非常有用的好处,帮助鼓励类的可重用性和可维护性。

也许最重要的是,有时会发现一类的初步实施太慢或使用太多内存,和一个更复杂的解决方案是必要的。封装的实施意味着一个类的实现可以完全改变,只要接口不变,类的使用者不必担心所有的变化!

考虑这个简单的例子:

1
2
3
4
5
6
7
8
9
10
11
12
class Change
{
public:
    int m_nValue;
};
 
int main()
{
    Change cChange;
    cChange.m_nValue = 5;
    std::cout << cChange.m_nValue << std::endl;
};


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值