学院首页>网络编程>C#.NET>体验C++中接口与实现分离的技术

体验C++中接口与实现分离的技术

作者:sixth 来源:赛迪论坛 添加时间:2006-5-26 10:33:50

在用C++写要导出类的库时,我们经常只想暴露接口,而隐藏类的实现细节。也就是说我们提供的头文件里只提供要暴露的公共成员函数的声明,类的其他所有信息都不会在这个头文件里面显示出来。这个时候就要用到接口与实现分离的技术。

  下面用一个最简单的例子来说明。

  类ClxExp是我们要导出的类,其中有一个私有成员变量是ClxTest类的对象,各个文件内容如下:

  lxTest.h文件内容:

class ClxTest
{
 public:
  ClxTest();
  virtual ~ClxTest();
  void DoSomething();
};

  lxTest.cpp文件内容:

#include "lxTest.h"

#include
using namespace std;

ClxTest::ClxTest()
{}

ClxTest::~ClxTest()
{}

void ClxTest::DoSomething()
{
 cout << "Do something in class ClxTest!" << endl;
}

////////////////////////////////////////////////////////////////////////////

  lxExp.h文件内容:

#include "lxTest.h"

class ClxExp
{
 public:
  ClxExp();
  virtual ~ClxExp();
  void DoSomething();
 private:
  ClxTest m_lxTest;
  void lxTest();
};
站内搜索