更多"有如下程序: #include<cstring> #inclu"的相关试题:
[单项选择]有如下程序:
#include<cstring>
#include<iostream>
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[1en+1];
strcpy(data,s);
int main( )
MyString a("C++Progreanfing");
MyString b(
A. ;
B. 没有定义实现深层复制(深复制)的复制构造函数
C. 构造对象a时实参与形参类型不符
D. 系统不能生成缺失的复制构造函数
[单项选择]有如下程序: #include<cstring> #include<iostream> 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[1en+1]; strcpy(data,s); } int main( ){ MyString a("C++Progreanfing"); MyString b(A) ; return 0; } 在运行上面的程序时出错,错误的原因是
A. 构造函数的实参不允许是本类的对象
B. 没有定义实现深层复制(深复制)的复制构造函数
C. 构造对象a时实参与形参类型不符
D. 系统不能生成缺失的复制构造函数
[单项选择]有如下的程序:
#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. ;
[单项选择]有如下的程序:#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); return0;}在运行上面的程序时出错,出错的原因是( )。
A. 构造函数的实参不允许是本类的对象
B. 没有定义实现深层复制(深拷贝)的复制构造函数
C. 构造对象a时实参与形参类型不符
D. 系统不能生成默认的复制构造函数
[单项选择]有如下的程序:
#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. 系统不能生成默认的复制构造函数
[单项选择]有下列的程序:
#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[1en+1);
strcpy(data,s);
int main( )
MyString a("C++Programing");
MyString b(
A. ;
B. 没有定义实现深层复制(深拷贝)的复制构造函数
C. 构造对象a时实参与形参类型不符
D. 系统不能生成默认的复制构造函数
[单项选择]有下列的程序:
#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. ;
[单项选择]有如下程序:
#include<iostream>
#include<iomanip>
using namespace std;
int main( )
cout<<setprecision(3)<<fixed< cout<<12.345<<______<<34.567;
return 0;
若程序的输出是:
**12.345**34.567
则程序中下画线处遗漏的操作符是
A. setprecision(3)
B. fixed
C. setfill(’*’)
D. stew(8)