单项选择题

有如下的程序:
#include<cstring.h)
#ingclude<iostream.h)
using namespace std;
Class MyString
public:
MyString(const char*s);
~MyString()delete[]data;
protected:
unsigned len;
char*data;;
MyString::MyString(const char*S)
len=stflen(s);
dara=new char[1en+1];
strcpy(dara,s);
int main()
MyString a(“C++Programing”);
MyString b(a);
return 0;
在运行上面的程序时出错,出错的原因是( )。

A.构造函数的实参不允许是本类的对象
B.没有定义实现深层复制(深拷贝)的复制构造函数
C.构造对象a时实参与形参类型不符
D.系统不能生成默认的复制构造函数