Pimpl惯用法处理DLL导出问题
发布时间
阅读量:
阅读量
在构建组件类的过程中,通常会采用Pimpl(pointer to implementation,指向实现的指针)这一常见技术手段。其主要目标在于减少模块间的耦合度、实现信息的隐藏以及将接口与具体实现进行分离。尽管许多资料中提及该方法有助于降低编译依赖并提升编译效率,但本人并未有明确的体会,这或许与项目规模相关,此处仅作为一种可能的观点予以提及。由于该方法涉及指针操作,为确保内存能够被正确释放,采用了智能指针std::tr1::shared_ptr,这是C++标准库所提供的解决方案。创建一个接口类的示例大致如下:
class CImpW;
class CINIFILE_API CCIniFileW
{
///
具体接口内容,省略……
///
private:
std::tr1::shared_ptr<CImpW> m_pImp;
};
在工程构建过程中将生成一个dll文件,然而IDE工具会提示相应的警告信息:

该提示表明存在
全部评论 (0)
还没有任何评论哟~
