返回信息流条款31是将文件间的编译依存关系降至最低,实现上用类声明替换#include.
所举的例子中,用一个指针pImpl指向具体实现类.我想问的是Person类中的函数具体是如何写的.
如Person类的构造函数的声名式:
Person(std::string& name,const Date& birthday,const Address& addr);
定义应该如何写呢.若写 { PersonImpl(name,birthday,addr);} 会在vs中提示找不到PersonImpl的构造函数.
求解啊,先谢过了.
这是一条镜像帖。来源:北邮人论坛 / cpp / #42218同步于 2010/8/7
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
求助:effective c++ 中条款31 的 实现
lvweihao
2010/8/7镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
【 在 lvweihao (lvweihao) 的大作中提到: 】
: 标 题: 求助:effective c++ 中条款31 的 实现
: 发信站: 北邮人论坛 (Sat Aug 7 18:52:13 2010), 站内
:
: 条款31是将文件间的编译依存关系降至最低,实现上用类声明替换#include.
: 所举的例子中,用一个指针pImpl指向具体实现类.我想问的是Person类中的函数具体是如何写的.
: 如Person类的构造函数的声名式:
: Person(std::string& name,const Date& birthday,const Address& addr);
Person(xxx a, xxxb, xxx c) :
PersonImpl(a, b, c)
{
// blablabla
}
: 定义应该如何写呢.若写 { PersonImpl(name,birthday,addr);} 会在vs中提示找不到PersonImpl的构造函数.
: 求解啊,先谢过了.
: --
: 认真发帖
:
: ※ 来源:·北邮人论坛 http://bbs.byr.cn·[FROM: 59.64.156.*]
多谢关注.
条款后面给出了实现.声明中(.h)用声明式,class PersonImpl;
实现中(.cpp)必须包含定义式,#include"PersonImpl.h"