0

我是复制构造函数概念的新手。我有一个基本问题。想要实现一个类似的功能

orig *f1(orig*o)
{
  // Returns a copy of *0 and should deep copy all the values of the parent
  // pointer.Planning to implement a copy constructor to achieve the same.
  // Can anyone provide a prototype or some idea on the same?
}
class dummyclass
{
 int value;
};
class orig
{
  dummyclass *dummy;
  char str[100];
public:
 //default constructor
:
//parametrised constructor
 orig(char *p)
{
   dummy = new dummyclass;
  //rest of the initialisation
}
orig(const orig& duplicate)
{
//copy constructor
}
};
int main()
{
  orig o("Hello");//constructor
  orig dup(o);//copy constructor
   }

我知道通过这种方式我们可以调用复制构造函数。但是如果给出了指向 o 即 *o 的指针,那么如何调用复制构造函数并进行深度复制。

4

1 回答 1

2

然后取消引用o

orig* o = new orig("Hello");
orig dup(*o);
于 2012-10-29T07:32:38.400 回答