访问类私有成员变量

    下面列举了“非类成员”访问“类私有成员变量”的3种方法:
    1.通过类公有成员函数set(), get()写、读私有成员;
    2.通过类公有成员函数get()获取私有成员的指针或引用,对指针或引用操作;

    3.通过友元。

    方法1,3都是经常使用的,方法2有点意外(写这篇blog也是因为它);不管怎么说,方法2,3都破坏了类的封装性。

#include 
using namespace std;

class Data
{
public:
  Data():data(0){}
  void set(int d)
  {
    data = d;
  }
  int &get()
  {
    return data;
  }
friend void access();
private:
  int data;

};

void access()
{
  Data oD;
  oD.data = 3;
  cout<


你可能感兴趣的:(编程(汇编/C/C++))