有如下的程序: #include<string.h> #include<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=strlen(s); data=new ehar[len+1]; strcpy(data,s); int main() MyString a( C++ Programing ): MyString b(a); return 0; 在运行上面的程序时出错,出错的原因是( )。
A.构造函数的实参不允许是本类的对象
B.没有定义实现深层复制的拷贝构造函数
C.构造对象a时实参与形参类型不符
D.系统不能生成默认的拷贝构造函数