我有一个名为BridgeChannel的类。它在私有部分下有一些内容。我不知道他们在做什么。

private:

  BridgeChannel (const BridgeChannel &);
  BridgeChannel &operator = (const BridgeChannel &);


您的想法和知识非常感激。

最佳答案

这意味着复制构造函数和复制赋值运算符为private。这样,不能在BridgeChannel外部复制或分配BridgeChannel类型的对象。

如果您的班级包含一些不可能,太昂贵或无法复制的资源,这将很有用。

在C ++ 11中,此惯用语已被标记为= delete的功能所代替,其作用相同,但提供了更清晰的错误消息。

简化此习语的老帮手是从boost::noncopyable继承。

关于c++ - 以下代码段是什么意思,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28111675/

10-09 05:01