有如下的程序: #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.系统不能生成默认的复制构造函数