我有一个名为BridgeChannel的类。它在私人部分有一些东西。我不知道他们做了什么。
private:
BridgeChannel (const BridgeChannel &);
BridgeChannel &operator = (const BridgeChannel &);
您的想法和知识非常值得赞赏。
答案 0 :(得分:2)
这意味着复制构造函数和复制赋值运算符为private
。这样,无法在BridgeChannel
之外复制或分配BridgeChannel
类型的对象。
如果您的类包含一些不可能,成本太高或无法复制的资源,这将非常有用。
在C ++ 11中,这个习惯用法已被替换为将这些函数标记为= delete
,它起到了同样的作用,但提供了更清晰的错误消息。
简化这个习惯用语的旧助手是继承boost::noncopyable
。