问题 单项选择题

有下列的程序:
#include<cstring.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 char[len+1);
strcpy(data,s);

int main()

MyString a("C++Programing");
MyString b(

A.;
return 0;

在运行上面的程

答案

参考答案:B

解析: 此题考查的是类的构造函数。C++语言中当一个新对象被另一个已存在的同类型对象初始化时要调用复制构造函数。语句“My String b(a);”符合条件将调用My String的复制构造函数,但类My String未定义复制构造函数,所以会出错。

单项选择题
单项选择题