类各种成员的访问权限 及 友员类和友员函数

来源:互联网 发布:淘宝直播哪个机构好 编辑:程序博客网 时间:2024/04/28 06:28
 
#ifndef _TEST_H#define _TEST_H#include <iostream>using namespace std;/************************************************************************//* public:   自身成员函数访问、对象水平访问、继承垂直访问、友员函数/类访问   protected:自身成员函数访问、继承垂直访问、友员函数/类访问   private:  自身成员函数访问、友员函数/类访问*//************************************************************************/class Merchant{private:int m_Money;void Add_Money();protected:int m_roomNum;public:friend class Lawer;friend void func();int m_age;Merchant();void getMoney();void getRoomNum();void getAge();};Merchant::Merchant(){m_Money = 100;m_roomNum = 503;m_age = 20;}void Merchant::Add_Money(){m_Money = m_Money + 10;}void Merchant::getAge(){int m;m = m_age;cout << m << endl;}void Merchant::getMoney(){Add_Money();int m;m = m_Money;cout << m << endl;}void Merchant::getRoomNum(){int m = m_roomNum;cout << m << endl;}class Der : public Merchant{public:void getpub(){int m = m_age;cout << m << endl;}void getprotected(){int m = m_roomNum;cout << m << endl;}/*void getpri()//private{int m = m_Money;cout << m << endl;}*/};class Lawer                             {public:void test(Merchant &mem);};void Lawer::test(Merchant &mem){Merchant& mer = mem;mer.m_Money = mer.m_Money + 10;   //friend class can access the private membercout << endl;}void func()                           //friend function can access the private member too{Merchant mem;mem.m_Money = mem.m_Money + 10;}int main(){Merchant mem;Lawer law;//mem.Add_Money();                //private methodmem.getAge();law.test(mem);mem.getMoney();cout << mem.m_age << endl;//cout << mem.m_Money << endl;  //private//cout << mem.m_roomNum << endl;//protectedDer der;der.getpub();der.getprotected();return 0;}#endif //_TEST_H

原创粉丝点击