#ifndef TEST_H_
#define TEST_H_
class Demo
{
private:
class Cheshire; // 将私有的成员隐藏在Cheshire里边.这个就是句柄类把private部分隐藏起来,还可以减少重复编译。
Cheshire* smile;
public:
void initialize();
int read();
void change(int);
};
#endif
#include <iostream>
#include "test.h"
using namespace std;
class Demo::Cheshire
{
public:
int i;
};
void Demo::initialize()
{
smile = new Cheshire; // smile 是一个指针,
smile->i = 0;
}
int Demo::read()
{
return smile->i;
}
void Demo::change(int x)
{
smile->i = x;
}
int main()
{
Demo a;
a.initialize();
a.change(1314);
cout << a.read() << endl;
return 0;
}