c++
C++是一门强大的面向对象编程语言,由C语言发展而来,”++“意为更进一步发展,C++充分吸收了C语言的优点,同时汲取了面向对象的编程思想,其后拥有STL库的强大支撑,具有封装、继承、多态三大特性,常以高效能著称。
-
有如下程序,运行时的输出结果是()。-#include<iostream> using namespace std; class CD{ public: ~CD() { cout<<"C";} private: char name[80]; }; int main(){ CD a, *b, d[2];return 0;}
-
若MyClass为一个类,执行 MyClass a[4],*p[5]; 语句时会自动调用该类构造函数的次数是()。
-
有如下程序,运行这个程序的输出结果是()。#include<iostream> using namespace std; class Test{ public: Test(){} Test(const Test& t){cout<<1;} }; Test fun(Test &u){Test t=u;return t;} int main(){Test x,y;x=fun(y);return 0;}
-
有如下程序,运行此程序输出符号?的个数是()。#include<iostream> using namespace std; class Name{ char name[20]; public: Name(){ strcpy(name, "?"); cout<<"?"; } Name(char *fname){ strcpy(name,fname); cout<<"?"; } }; int main(){ Name name[3]={Name("张三"),Name("李四")}; return 0; }
-
有如下程序,运行时的输出结果是()。#include<iostream> using namespace std; class Toy{ public: Toy(char*_n){ strcpy(name,_n); count++;} ~Toy(){ count--;} char* GetName(){ return name;} static int getCount(){return count;} private: char name[10]; static int count; }; int Toy::count=0; int main(){ Toy t1("Snoopy"),t2("Mickey"),t3("Barbie"); cout<<<t1.getCount()<<endl; return 0; }
-
Sample是一个类,执行下面语句后,调用Sample类的构造函数的次数是()。Sample a[2], *p=new Sample;
-
有如下程序,运行时的输出结果是()。#include<iostream> using namespace std; class ONE{ int c; public: ONE():c(0) {cout<<1;} ONE(int n):c(n) {cout<<2;} }; class TWO { ONE one1; ONE one2; public: TWO(int m): one2(m) {cout<<3;} }; int main() { TWO t(4); return 0; }
-
有如下程序,运行时的输出结果是()。#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 *p=new XCF(8); cout<<p->Geta(); delete p; return 0; }
-
有如下程序,运行时的输出结果是()。#include<iostream> using namespace std; class MyClass{ public: MyClass(int i=0){cout<<1;} MyClass(const MyClass&x){cout<<2;} MyClass& operator=(const MyClass&x){cout<<3;return*this;} ~MyClass(){cout<<4;} }; int main(){ MyClass obj1(1),obj2(2),obj3(obj1); return 0; }
-
有如下程序,执行这个程序输出星号(*)的个数为()。#include<iostream> using namespace std; class Sample{ public: Sample(){} ~Sample(){cout<<"*";} }; int main(){ Sample temp[2],*pTemp[2]; return 0; }
-
在C++中,编译系统自动为一个类生成缺省构造函数的条件是()。
-
有如下类定义,则类MyClass的构造函数的个数是()。class MyClass{ int value; public: MyClass(int n): value(n) {} int getValue()const {return value;} };
-
有如下程序,程序的输出结果是()。#include<iostream> using namespace std; class Base{ public: Base(int x=0){cout<<x;} }; class Derived:public Base{ public: Derived(int x=0){cout<<x;} private: Base val; }; int main(){ Derived d(1); return 0; }
-
有如下程序,程序的输出结果是()。#include<iostream> using namespace std; class Part{ public: Part(int x=0):val(x) {cout<<val;} ~Part(){cout<<val;} private: int val; }; class Whole{ public: Whole(int x,int y,int z=0):p2(x),p1(y),val(z){cout<<val;} ~Whole(){cout<<val;} private: Part p1,p2; int val; }; int main(){ Whole obj(1,2,3); return 0; }
-
对于一个类定义,下列叙述中错误的是()。
-
有如下程序,运行时输出的结果是()。#include<iostream> using namespace std; class test{ private: int a; public: test() {cout<<"constructor"<<endl;} test(int a) {cout<<a<<endl;} test(const test&test) { a=test.a; cout<<"copy constructor"<<endl; } ~test() {cout<<"destructor"<<endl;} }; int main() { test A(3); return 0; }
-
有如下程序,执行这个程序屏幕上将显示输出()。#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; }
-
有如下类定义,若执行语句 Point a(2), b[3], *c[4]; ,则Point类的构造函数被调用的次数是()。class Point { int x,y; public: Point():x(0),y(0){} Point(int x,int y=0):x(x),y(y){} };
-
在下列函数原型中,可以作为类AA构造函数的是()。
-
有如下程序,运行时输出的结果是()。#include<iostream> using namespace std; class Point { static int number; public: Point() {number++;} ~Point() {number--;} }; int Point::number=0; void main() { Point *ptr; Point A,B; Point *ptr_point=new Point[3]; ptr=ptr_point; Point C; cout<<Point::number<<endl; delete[] ptr; }