如何使用获得私有拷贝构造函数和赋值构造函数的对象?

时间:2010-06-05 05:17:54

标签: c++ private-constructor

  

可能重复:
  How to use a object whose copy constructor and copy assignment is private?

在阅读 TCPL 时,我遇到了一个问题,正如标题所说,然后'私人'类是:

class Unique_handle {
private:   
    Unique_handle& operator=(const Unique_handle &rhs);  
    Unique_handle(const Unique_handle &rhs); 
public:
    //...
} 

使用代码是:

struct Y {
    Unique_handle obj;
};

我想做这样的操作

main()
{
    Y y1;
    Y y2 = y1;
    return 0;
}

虽然,这些代码来自TCPL,但我仍然无法得到解决方案......任何人都可以帮助我,欣赏。

1 个答案:

答案 0 :(得分:1)

显然你需要在该类中使用“friend”声明,或者该类已经有静态访问器,它们将创建甚至分配你需要的实例。