请问c++学者

请教c++学者~
此段代码有何问题,求解啊!!!

class Person
 {
 public:
  Person();//默认构造函数
  Person(const string& n);//转型构造函数
  Person(const char* n);//转型构造函数
  Person(const Person&);//拷贝构造函数
  ~Person();//析构函数
 private:
  string name;
 };

------解决方案--------------------
有声明,没定义(实现)
------解决方案--------------------
Person(const Person& p);//拷贝构造函数

------解决方案--------------------
Person(const Person& p);//拷贝构造函数

------解决方案--------------------
Person(const Person& p);//拷贝构造函数

------解决方案--------------------
楼上乱说,还发很多遍,不加p没问题,应该是4l说的原因
------解决方案--------------------
网络卡住了,点了好多次,不好意思。
------解决方案--------------------
你这段代码没有问题。
但这些构造函数定义了么。声明而不定义成员函数是合法的,但是,使用未定义的成员的任何尝试将导致链接失败。
你如果没有定义构造函数,那么Person per;会调用构造函数,会报错。