题目详情
当前位置:首页 > 职业培训考试
题目详情:
发布时间:2024-05-22 02:46:15

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

更多"有如下的程序: #include<cstring> #in"的相关试题:

[单项选择]

有如下程序:
#include<iostream>
#include<cstring>
using namespace std;
class XCF{
int a;
public:
XCF(int aa=0):a(aa) { cout<<"1";}
XCF(XCF&x){ a=x.a;cout<<"2";)
~XCF( ){ cout<<a;}
int Geta( ){ return a;}
};
int main( ){
XCF d1(5),d2(d1);
XCF*pd=new XCF(8);
cout<<pd->Geta( );
delete pd;
return 0;
}
运行时的输出结果是()


A. 1215588
B. 1218855
C. 12185
D. 128512
[单项选择]如下程序的输出结果是 #include<iostream> #include<cstring> using namespace std; class XCF{ int a; public: XCF(int aa=0):a(aA) {cout<<"1";} XCF(XCF&X){a=x.a;cout<<"2";l ~XCF( ){cout<<a;} int Geta( )t return a;} }; int main( ){ XCF d(15),d2(d1); XCF*pd=new XCF(8); cout<<pd->Geta( ); delete pd; return 0; }
A. 1215588
B. 1218855
C. 12185
D. 128512
[单项选择]有如下的程序:
#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;

在运行上面的程序时出错,出错的原因是( )。
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);
return0;在运行上面的程序时出错,出错的原因是( )。
A. 构造函数的实参不允许是本类的对象
B. 没有定义实现深层复制(深拷贝)的复制构造函数
C. 构造对象a时实参与形参类型不符
D. 系统不能生成默认的复制构造函数
[单项选择]

有如下程序:
#include<iostream>
#included<cstring>
using namespace std; class XCD{
char*a; int b; public: XCD(char*aa,int bb){ a=new char[strlen(aa)+1];
strcpy(a,aa); b=bb;
} char*Geta( ){
returri 3;
} int Getb( ){
return b;)
};
int main( ){
char*p1="abcd",*p2="weirong";
int dl=6,d2=8;
XCD x(p1,d1),y(p2,d2); cout<<strlen(x.Geta( ))+y.Getb( )<<endl;
return 0;
}
运行时的输出结果是()


A. 12
B. 16
C. 14
D. 11
[单项选择]如下程序的输出结果是 #include<lostream> #include<cstring> using namespace std; class XCD{ char*a; int b; public: XCD(char*aa,int bB) { a=new char[strlen(aA) +1]; strcpy(a,aA) ; b=bb; } char*Geta( ){return a;} int Getb( ){return b;} }; int main( ){ char*pl="abcd",*p2="weirong": int dl,6,d2=8; XCD x(pl,d1),y(p2,d2); cout<<strlen(x.Geta( ))+y.Getb( )<<endl; return 0; }
A. 12
B. 16
C. 14
D. 11
[单项选择]有如下程序 #include <iostream> #include <iomanip> using namespace std; class MyClass { public: MyClass( ) { cout<<’A’; } MyClass(char c){ cout<<c; } ~MyClass( ){ cout<<’B’; } }; int main( ) { MyClass p1,*p2; p2=new MyClass(’X’); delete p2; return 0; } 执行这个程序屏幕上将显示输出
A. ABX
B. ABXB
C. AXB
D. AXBB
[单项选择]有如下程序
#include <iostream>
#include <iomanip>
using namespace std;
int main( )
cout<<setprecision(3)<<fixed<<setfill('*')<<setw(8);
cout<<12.345<<______34.567;
return 0;

若程序的输出是:
**12.345**34.567
则程序中下划线处遗漏的操作符是( )。
[单项选择]有如下程序
#include <iostream>
#include <iomanip>
using namespace std;
class MyClass
public:
MyClass( ) cout<<’A’;
MyClass(char c) cout<<c;
~MyClass( ) cout<<’B’;
;
int main( )
MyClass p1,*p2;
p2=new MyClass(’X’);
delete p2;
return 0;执行这个程序屏幕上将显示输出( )。
A. ABX
B. ABXB
C. AXB
D. AXBB
[单项选择]有如下程序:
#include<iostream>#include<iosream>
using namespace std;
class BASE
char c;
public;
BASE(char n):c(n)
virtual ~ BASE( )cout<<c;

class DERIVED; public BASE
char c;
public:
DERIVED (char n): BASE (n+1),c(n)
~DERIVED( ) cout<<c;)

int main( )
DERIVED(’X’);
return 0;

执行上面的程序将输出( )。
A. XY
B. YX
C. X
D. Y
[单项选择]有如下程序:
#include <iostream>
#include <iomanip>
using namespace std;
int main( )

cout.fill('&');
cout<<left<<setw(4)<<123<<"OK"<<endl;
return 0;

执行这个程序的输出结果是( )。
A. 123*OK
B. 123*OK**
C. *123OK
D. *123**OK
[单项选择]有如下程序:
#include <iostream>
#include <iomarup>
using namespace std;
int main( )
cout<<setw(10)<<setfill('x')<<setprecision(8)<<left;
cout<<12.3456793<<______<<98765;
return 0;

若程厚的输出是12.345679x98765xxxxx,则划线处缺失的部分是( )。

我来回答:

购买搜题卡查看答案
[会员特权] 开通VIP, 查看 全部题目答案
[会员特权] 享免全部广告特权
推荐91天
¥36.8
¥80元
31天
¥20.8
¥40元
365天
¥88.8
¥188元
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《购买须知》
立即支付 系统将自动为您注册账号
请使用微信扫码支付

订单号:

请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码