C++ c++;可以用指针或引用复制默认构造函数吗?

C++ c++;可以用指针或引用复制默认构造函数吗?,c++,C++,我有一个目标人: class Person { ... public: Person(string firstName, string lastName); ... } 在我的主要工作中,我有一个复制构造函数到它,它应该工作吗? 或者我需要确保两个对象之间不共享成员字段 Person p1("Arthur", "Janes"); Person p2(p1); 只要您的类只包含正确可复制的成员,那就可以了。具体来说,如果它们存储为std::string,那么您就很好了;如果存储指针或引用,则可

我有一个目标人:

class Person
{
...
public:
Person(string firstName, string lastName);
...
}
在我的主要工作中,我有一个复制构造函数到它,它应该工作吗? 或者我需要确保两个对象之间不共享成员字段

Person p1("Arthur", "Janes");
Person p2(p1);

只要您的类只包含正确可复制的成员,那就可以了。具体来说,如果它们存储为
std::string
,那么您就很好了;如果存储指针或引用,则可能存在危险。

只要类成员是可复制的,并且类中没有任何其他特定的复制构造函数,就应该能够使用复制构造函数。定义类时会生成默认的复制构造函数:


您想如何“复制构造函数”(原文如此!)?指针/引用在哪里?请包含一个SSCCE。我想要默认的复制构造函数,字符串属性是指针吗?