面向?qū)ο蟪绦蛟O(shè)計離線作業(yè)答案_第1頁
面向?qū)ο蟪绦蛟O(shè)計離線作業(yè)答案_第2頁
面向?qū)ο蟪绦蛟O(shè)計離線作業(yè)答案_第3頁
面向?qū)ο蟪绦蛟O(shè)計離線作業(yè)答案_第4頁
面向?qū)ο蟪绦蛟O(shè)計離線作業(yè)答案_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、浙江大學(xué)遠(yuǎn)程教育學(xué)院面向?qū)ο蟪绦蛟O(shè)計課程作業(yè)答案第2【】 測試下面的注釋(它在C+風(fēng)格的單行注釋中套入了類似于C的注釋)是否有效。name3='a' B. name="lin"C. name=new char5; D. cout<<name3;】 假設(shè)已經(jīng)有定義“ char * const name="chen" ”下面的語句中正確的是 ( A ) 。A. name3='q' B. name="lin"C. name=new char5; D. name=new char('q

2、9;);】 假設(shè)已經(jīng)有定義“ const char * name="chen" ”下面的語句中錯誤的是 (A ) 。A. name3='q' B. name="lin"C. name=new char5; D. name=new char('q'); 】重載函數(shù)在調(diào)用時選擇的依據(jù)中 ,( B )是錯誤的。A函數(shù)名字B函數(shù)的返回類型C參數(shù)個數(shù)D參數(shù)的類型】 在( A )情況下適宜采用內(nèi)聯(lián)函數(shù)。A函數(shù)代碼小,頻繁調(diào)用 B 函數(shù)代碼多,頻繁調(diào)用C函數(shù)體含有遞歸語句D. 函數(shù)體含有循環(huán)語句】 下列描述中,( C )是錯誤的。A.

3、內(nèi)聯(lián)函數(shù)主要解決程序的運行效率問題B. 內(nèi)聯(lián)函數(shù)的定義必須出現(xiàn)在內(nèi)聯(lián)函數(shù)第一次被調(diào)用之前C. 內(nèi)聯(lián)函數(shù)中可以包括各種語句D. 對內(nèi)聯(lián)函數(shù)不可以進(jìn)行異常接口聲明【】 在C+中,關(guān)于下列設(shè)置默認(rèn)參數(shù)值的描述中,(B )是正確的。A 不允許設(shè)置默認(rèn)參數(shù)值B 在指定了默認(rèn)值的參數(shù)右邊,不能出現(xiàn)沒有指定默認(rèn)值的參數(shù)C 只能在函數(shù)的定義性聲明中指定參數(shù)的默認(rèn)值D. 設(shè)置默認(rèn)參數(shù)值時,必須全部都設(shè)置】 下面的類型聲明中正確是( D )。A. int &a4 ; B. int &*p ;&&q ; D. int i,*p=&i ;】 下面有關(guān)重載函數(shù)的說法中正確的是(

4、C )。A重載函數(shù)必須具有不同的返回值類型B重載函數(shù)形參個數(shù)必須不同C. 重載函數(shù)必須有不同的形參列表D重載函數(shù)名可以不同【】關(guān)于new運算符的下列描述中,(D )是錯誤的。A,它可以用來動態(tài)創(chuàng)建對象和對象數(shù)組B. 使用它創(chuàng)建的對象或?qū)ο髷?shù)組可以使用運算符delete 刪除C. 使用它創(chuàng)建對象時要調(diào)用構(gòu)造函數(shù)D.使用它創(chuàng)建對象數(shù)組時必須指定初始值】 關(guān)于 delete 運算符的下列描述中, ( C )是錯誤的。A.它必須用于new返回的指針B. 使用它刪除對象時要調(diào)用析構(gòu)函數(shù)C. 對一個指針可以使用多次該運算符D. 指針名前只有一對方括號符號,不管所刪除數(shù)組的維數(shù)】 寫出下列程序的運行結(jié)果。#

5、include<iostream>using namespace std;int i=15;int main() int i;i=100; :i=i+1; cout<<:i<<endl;return 0;答:101】 寫出下列程序的運行結(jié)果。 #include<iostream> using namespace std; void f(int &m,int n) int temp; temp=m; m=n; n=temp;int main() int a=5,b=10;f(a,b);cout<<a<<"

6、"<<b<<endl; return 0; 答:10 10】 分析下面程序的輸出結(jié)果。 #include<iostream> using namespace std; int &f(int &i) i+=10;return i;int main() int k=0;int & m=f(k);coutvvkvve ndl;m=20;coutvvkvve ndl;return 0;答:1020【】 舉例說明可以使用const替代# define以消除# define的不安全性。答:例如 #i nclude <>#de

7、fi ne A 2+4#defi ne B A*3void mai n()coutwBwe ndl;上面程序的運行結(jié)果是14而不是18但很容易被認(rèn)為是18。用con st替代#define就能得到正確結(jié)果從而消除了 #define的不安全性。#in clude <>const A=2+4;const B=A*3;void mai n()coutwBwe ndl;運行結(jié)果為18?!尽烤帉懸粋€C+風(fēng)格的程序,用動態(tài)分配空間的方法計算Fibonacci數(shù)列的 前 20 項,并存儲到動態(tài)分配的空間中。#include<iostream>using namespace std;i

8、nt main()int i;int *p;p=new int20;p0=0;p1=1;cout<<*p<<" "<<*(p+1)<<" "for(i=2;i<20;i+)pi=pi-2+pi-1;cout<<*(p+i)<<" "delete p;return 0;【】編寫一個C+風(fēng)格的程序,建立一個被稱為sroot()的函數(shù),返回其參數(shù)的二次方根。重載 sroot()3 次, 讓它返回整數(shù)、長整數(shù)與雙精度數(shù)的二 次方根(計算二次方根時,可以使用標(biāo)準(zhǔn)庫函數(shù)

9、 sqrt ()。#include <>#include <>int sroot(int x)return (int)sqrt(x);float sroot(float x)return(float)sqrt(x);double sroot(double x)return (double)sqrt(x);void main() 析構(gòu)函數(shù)名與類名完全相同C. 析構(gòu)函數(shù)不能指定返回類型D. 析構(gòu)函數(shù)可以有一個或多個參數(shù)【】 構(gòu)造函數(shù)是在( B )時被執(zhí)行的。A 程序編譯 B. 創(chuàng)建對象C. 創(chuàng)建類 D 程序裝人內(nèi)存【】 在下面有關(guān)靜態(tài)成員函數(shù)的描述中,正確的是( B )。A

10、 在靜態(tài)成員函數(shù)中可以使用 this 指針B. 在建立對象前 , 就可以為靜態(tài)數(shù)據(jù)成員賦值C.靜態(tài)成員函數(shù)在類外定義時,要用 static 前綴D. 靜態(tài)成員函數(shù)只能在類外定義【】 在下面有關(guān)友元函數(shù)的描述中,正確的說法是 A )。 A 友元函數(shù)是獨立于當(dāng)前類的外部函數(shù) B. 一個友元函數(shù)不能同時定義為兩個類的友元函數(shù)C. 友元函數(shù)必須在類的外部定義D. 在外部定義友元函數(shù)時,必須加關(guān)鍵字 friend【】 友元的作用之一是( A)。A 提高程序的運行效率 B 加強(qiáng)類的封裝性C. 實現(xiàn)數(shù)據(jù)的隱藏性 D. 增加成員函數(shù)的種類#include<iostream> using names

11、pace std; class B public:B()B(int i,int j) x=i;y=j;void printb()cout<<x<<","<<y<<endl; private:int x,y;class Apublic:A()A(int I,int j); void printa();private:B c;A:A(int i,int j):c(i,j)void A:printa()();int main() A a(7,8);(); return 0;D. 9,10A8,9B. 7,8C. 5,6】 以下程序的

12、運行結(jié)果是 (A ) 。 #include<iostream>using namespace std;class Apublic: void set(int i,int j) x=i;y=j;int get_y()return y;private:int x,y;class boxpublic:void set(int l,int w,int s,int p) length=1; width=w;(s,p);int get_area()return length*width;private:int length,width;A label;int main() box b;(4,6

13、,1,20);cout<<()<<endl;return 0;A24B. 4 C. 20 D. 6】 以下程序的運行結(jié)果是( B )。#include<iostream>using namespace std;class Samplepublic:Sample(int i,int j) x=i;y=j;void disp()cout<<"disp1"<<endl;void disp() constcout<<"disp2"<<endl;private:int x,y;in

14、t main()const Sample a(1,2);();return 0;程序編譯出錯A. disp1 2 C. disp1 disp2 D.】 以下程序的運行結(jié)果是( B )。#include<iostream>using namespace std;class Rpublic:R(int r1,int r2)R1=r1;R2=r2;void print();void print() const;private:int R1,R2;void R:print()cout<<R1<<","<<R2<<endl;

15、void R:print() constcout<<R1<<","<<R2<<endl;int main() R a(6,8);const R b(56,88);();return 0;A. 6,8 B. 56,88 C. 0,0 D. 8,6 】 寫出下面程序的運行結(jié)果。#include<iostream>using namespace std;class toy public: toy(int q,int p) quan=q; price=p;int get_quan()return quan;int get_

16、price() return price;private:int quan,price;int main() toy op32= toy(10,20),toy(30,48), toy(50,68),toy(70,80), toy(90,16),toy(11,120),;for(int i=0;i<3;i+)cout<<opi0.get_quan()<<","cout<<opi0.get_price()<<"n"cout<<opi1.get_quan()<<",&quo

17、t;cout<<opi1.get_price()<<"n" cout<<endl;return 0;10,2030,4850,6870,8090,1611,120】 寫出下面程序的運行結(jié)果。#include<iostream>using namespace std;class example public:example(int n) i=n;cout<<"Constructingn"example() cout<<"Destructingn"int get_i(

18、) return i;private:int i;int sqr_it(example o)return ()*();int main() example x(10); cout<<()<<endl; cout<<sqr_it(x)<<endl; return 0;10100DestructingDestructing】 寫出下面程序的運行結(jié)果。#include<iostream>using namespace std;class aClass public:aClass()total+;aClass()total-;int gett

19、otal() return total; private:static int total;int aClass:total=0;int main()aClass o1,o2,o3;cout<<()<<"objects in existencen" aClass *p;p=new aClass;if(!p) cout<<"Allocation errorn"return 1;cout<<();cout<<"objects in existence after allocationn&q

20、uot; delete p;cout<<();cout<<"objects in existence after deletionn" return 0;3objects in existence4objects in existence after allocation3objects in existence after deletion】 寫出下面程序的運行結(jié)果。#include<iostream>class test public:test();test();private:int i;test:test() i=25;for(i

21、nt ctr=0;ctr<10;ctr+) cout<<"Counting at"<<ctr<<"n"test anObject;int main() return 0;Counting at0Counting at1Counting at2Counting at3Counting at4Counting at5Counting at6Counting at7Counting at8Counting at9】 寫出下面程序的運行結(jié)果。#include<iostream>using namespace

22、std;class Aint a,b;public:A()a=0;b=0;cout<<"Default constructor called.n"A(int i,int j)a=i;b=j;cout<<"Constructor: a="<<a<<",b="<<b<<endl; ;int main()A a3;A b3=A(1,2),A(3,4),A(5,6);return 0;Default constructor called.Default construct

23、or called.Default constructor called.Constructor: a=1,b=2Constructor: a=3,b=4Constructor: a=5,b=6】 寫出下面程序的運行結(jié)果。#include<iostream>class Testprivate:int val;public:Test() cout<<"default."<<endl;Test(int n) val=n;cout<<"Con."<<endl;Test(const Test&

24、t)val=;cout<<"Copy con."<<endl;int main()Test t1(6);Test t2=t1;Test t3;t3=t1;return 0;Con.Copy con.Default.】 寫出下面程序的運行結(jié)果。#include<iostream>using namespace std;class Nprivate: int A; static int B;public: N(int a) A=a; B+=a;static void f1(N m);void N:f1(N m) cout<<&qu

25、ot;A="<<<<endl; cout<<"B="<<B<<endl;int N:B=0;int main() N P(5),Q(9);N:f1(P);N:f1(Q);return 0;A=5B=14A=9B=14】 寫出下面程序的運行結(jié)果。#include<iostream>class Mint x,y;public:M() x=y=0;M(int i,int j)x=i;y=j;void copy(M*m);void setxy(int i,int j)x=i;y=j;void prin

26、t()cout<<x<<","<<y<<endl;void M:copy(M*m)x=m->x;y=m->y;void fun(M m1,M*m2)(12,15);m2->setxy(22,25);int main()M p(5,7),q;(&p);fun(p,&q);();();return 0;5,722,25】 寫出下面程序的運行結(jié)果。#include<iostream>using namespace std;class Mint A;static int B;public:

27、M(int a)A=a;B+=a;cout<<"Constructing"<<endl;static void f1(M m);M()cout<<"Destructing n"void M:f1(M m) cout<<"A="<<<<endl; cout<<"B="<<B<<endl;int M:B=0;int main()M p(5),Q(10);M:f1(p);M:f1(Q);return 0;Const

28、ructingConstructingA=5B=15DestructingA=10B=15DestructingDestructingDestructing】 指出下列程序中的錯誤,并說明為什么#include<iostream>using namespace std;class Studentpublic:void printStu();private:char name10;int age;float aver;int main() Student p1,p2,p3;=30;return 0; age 為 private 不能付值】 指出下列程序中的錯誤,并說明為什么。#inc

29、lude<iostream> using namespace std;class Studentint sno;int age;void printStu();void setSno(int d);void printStu(); cout<<"nSno is"<<sno<<"," cout<<"age is"<<age<<"."<<endl;void setSno(int s) sno=s;void setAge(in

30、t a) age=a;int main() Student lin;(20021);(20);(); 'class Student'不存在一個叫 'setAge' 的方式】 指出下列程序中的錯誤,并說明為什么。#include<iostream>using namespace std;class Pointpublic:int x,y;private:Piont()x=1;y=2;int main()Point cpoint;=2;return 0;構(gòu)筑函數(shù)錯誤】 下面是一個計算器類的定義,請完成該類成員函數(shù)的實現(xiàn)。class counterpubl

31、ic:counter(int number);void increment(); <<month<<"."<<day<<endl;int main() Date testDay;(5);(10);(2003);();return 0;【】 建立類 cylinder,cylinder 的構(gòu)造函數(shù)被傳遞了兩個 double 值,分別表示 圓柱體的半徑和高度。 用類 cylinder 計算圓柱體的體積, 并存儲在一 個 double 變量中。在類 cylinder 中包含一個成員函數(shù) vol ,用來顯 示每個 cylinder 對象

32、的體積。#include<iostream>using namespace std;#define PIclass Cylinderpublic:Cylinder(double radius,doubleheight):radius(radius),height(height),volume(PI *radius*radius*height)total_vol += volume;double vol()const;friend void getParas(double& radius,double&height,double&vol,double&

33、 total_vol,const Cylinder& obj);private:double radius; et_qu()*obji.get_price()<<endl;【】 修改習(xí)題,通過對象指針訪問對象數(shù)組,使程序以相反的順序顯示每個對 象數(shù)組元素的 qu*price 值。#include <>class bookint qu, price;public:book(int q)qu=q; price=10*q;int get_qu() return qu; int get_price() return price; ;void main( )book ob

34、j5=1,2,3,4,5;book *p;p=&obj4;for(int i=0;i<5;i+) cout<<" 數(shù) 組 對 象 "<<i+1<<" 的 qu*price為:"<vp->get_qu()*p->get_price()v<e ndl;p-;【】構(gòu)建一個類Stock,含字符數(shù)組stockcode及整型數(shù)據(jù)成員quan、雙精度型數(shù)據(jù)成員 price 。構(gòu)造函數(shù)含 3 個參數(shù):字符數(shù)組 na 及 q、p。 當(dāng)定義Stock的類對象時,將對象的第1個字符串參數(shù)賦給數(shù)據(jù)成員st

35、ockcode,第2和第3個參數(shù)分別賦給quan、price。未設(shè)置第2和 第3個參數(shù)時,quan的值為1000, price的值為。成員函數(shù)print沒 有形參,需使用this指針,顯示對象數(shù)據(jù)成員的內(nèi)容。假設(shè)類Stock第1個對象的三個參數(shù)分別為:“600001”,3000和,第2個對象的第 1個數(shù)據(jù)成員的值是“600001”,第2和第3個數(shù)據(jù)成員的值取默認(rèn)值。 要求編寫程序分別顯示這兩個對象數(shù)據(jù)成員的值。#i nclude <iostream>fp)O);fp=stude nt:avg2;printf(" 數(shù)學(xué)平均分 gn",(s1*fp)();fp=st

36、ude nt:avg3;prin tf("英語平均分 gn",(s1.*fp)();第四章: 】使用派中類的主要原因是( A )。A提高代碼的可重用性B提高程序的運行效率C 加強(qiáng)類的封裝性D 實現(xiàn)數(shù)據(jù)的隱藏】 假設(shè)已經(jīng)定義好了一個類 student ,現(xiàn)在要定義類 derived ,它是從 student 私有派生的,定義類 derived 的正確寫法是( c )。A. clase derived:student private;B. clase derived:student public;Cclase derived:private student;Dclase der

37、ived:public student;】 在多繼承構(gòu)造函數(shù)定義中,幾個基類構(gòu)造函數(shù)用( c )分隔。A. : B. ; C ,D. :】 設(shè)置虛基類的目的是( b )。A. 簡化程序 B. 消除二義性 C. 提高運行效率 D 減少目標(biāo)代碼 】 寫出下面程序的運行結(jié)果。#include<iostream>using namespace std;class B1public:B1(int i) b1=i;cout<<"Constructor B1."<<endl;void Print() cout<<b1<<endl

38、;private:int b1; class B2public:B2(int i)b2=i;cout<<"Constructor B2. "<<endl;void Print() cout<<b2<<endl;private:int b2;class A:public B2,public B1public:A(int i,int j,int l);void Print(); private:int a;A:A(int i,int j,int l):B1(i),B2(j) a=l;cout<<"Constr

39、uctor A. "<<endl;void A:Print() B1:Print();B2:Print(); cout<<a<<endl;int main() A aa(3,2,1);(); return 0;321】 寫出下面程序的運行結(jié)果。 #include<iostream> using namespace std; class Main protected:char *mainfood; public:Main(char *name) mainfood=name;class Sub protected: char *subfoo

40、d;public:Sub(char *name) subfood=name;class Menu:public Main,public Sub public:Menu(char *m,char *s):Main(m),Sub(s) void show();void Menu:show() cout<<" 主食 ="<<mainfood<<endl; cout<<" 副食 ="<<subfood<<endl;int main() Menu m("bread",&qu

41、ot;steak");();return 0;主食 =bread副食 =stea】 寫出下面程序的運行結(jié)果。#include<iostream> using namespace std; class A private: int a;public:A() a=0; A(int i) a=i; void Print() cout<<a<<","class B:public A private:int b1,b2; public:B() b1=0;b2=0;B(int i) b1=i; b2=0;B(int i,int j,int

42、k):A(i),b1(j),b2(k)void Print() A:Print();cout<<b1<<","<<b2<<endl;int main() B ob1,ob2(1),ob3(3,6,9);();();(); return 0;0,0,00,1,03,6,9】 寫出下面程序的運行結(jié)果#include<iostream> using namespace std;class B1int b1;public:B1(int i)b1=i;cout<<"constructor B1.&quo

43、t;<<i<<endl;void print() cout<<b1<<endl;class B2int b2;public:B2(int i) b2=i;cout<<"constructor B2."<<i<<endl;void print() cout<<b2<<endl;class B3int b3;public:B3(int i) b3=i;cout<<"constructor B3."<<i<<endl;

44、int getb3() return b3;class A:public B2,public B1int a; B3 bb;public:A(int i,int j,int k,int l):B1(i),B2(j),bb(k)a=l;cout<<"constructor A."<<l<<endl;void print()B1:print();B2:print();cout<<a<<","<<()<<endl;int main() A aa(1,2,3,4);();retu

45、rn 0;Constructor B2.ConstructorConstructorConstructor124,3】 寫出下面程序的運行結(jié)果。 #include<iostream> using namespace std; class A public:A(int i,int j)x=i;y=j;int sum() return x+y;private:int x,y;class B:public A public:B(int i,int j,int k,int l);int sum() return w+h;private:int w,h;B:B(int i,int j,int

46、 k,int l):A(i,j) w=k;h=l;void f(A& s) cout<<()<<endl;int main() B ob(1,3,5,7);f(ob);return 0;4】 寫出下面程序的運行結(jié)果。 #include<iostream> using namespace std; class A int a,b;public:A(int i,int j)a=i;b=j;void Move(int x,int y) a+=x; b+=y;void Show() cout<<"("<<a<

47、<","<<b<<")"<<endl;class B:private Aint x,y;public:B(int i,int j,int k,int l):A(i,j) x=k;y=l;void Show() cout<<x<<","<<y<<endl;void fun() Move(3,5);void f1() A:Show();int main()A e(1,2);();B d(3,4,5,6);();();();return 0;(1,2)

48、5,6(6,9)】 寫出下面程序的運行結(jié)果。#include<iostream> using namespace std; class base1public:base1() cout<<"class base1"<<endl;class base2public:base2() cout<<"class base2"<<endl;class level1:public base2,virtual public base1 public:level1()cout<<"clas

49、s level1"<<endl;class level2:public base2,virtual public base1 public:level2() cout<<"class level2"<<endl;class toplevel:public level1,virtual public level2 public:toplevel() cout<<"class toplevel"<<endl;int main() toplevel obj;return 0;class ba

50、se1class base2class level2class base2class level1class toplevel】 已有類 Time 和 Date ,要求設(shè)計一個派生類 Birthtime ,它繼承類 Time 和Date,并且增加一個數(shù)據(jù)成員Child name用于表示小孩的名字,同時 設(shè)計主程序顯示一個小孩的出生時間和名字。class Timepublic:Time(int h,int m,int s) hours=h;minutes=m;seconds=s;void display() cout«"出生時間:"vvhoursvv"時&

51、quot;<<minutesvv"分"vvseconds<<" 秒"<<e ndl;protected:int hours,minutes,seconds;class Datepublic:Date(int m,int d,int y) month=m;day=d;year=y;void display() coutvv"出生年 月:"vvyearvv"年"<<month<<"月"<<day<<"日 &

52、quot;<<endl;protected:int month,day,year;class Birthtime:public Time,public Datepublic :Birthtime(char *Cn,int yy,int mm,int dd,int hh,int mint,intss):Time(hh,mint,ss),Date(mm,dd,yy)strcpy(Childname,Cn);void display()cout«"姓名:"vvChildname«endl;Date:display();Time:display();

53、protected: char Childname20;int main()Birthtime yx(" 曉鳳",2010,12,13,14,20,30);();return 0;【】 編寫一個學(xué)生和教師數(shù)據(jù)輸人和顯示程序,學(xué)生數(shù)據(jù)有編號、姓名、班號 和成績,教師數(shù)據(jù)有編號、姓名、職稱和部門。要求將編號、姓名輸 入和顯示設(shè)計成一個類person,并作為學(xué)生數(shù)據(jù)操作類student和教 師數(shù)據(jù)操作類teacher的基類。#i nclude <iostream>#in clude <stri ng>using n amespace std;class p

54、ers onprivate:i nt no;stri ng n ame;public:void in put()cout<<“請輸入編號和姓名” ;cin>>no>>name;void display()cout<< “編號 ” <<no<<endl; cout<< “姓名 ” <<name<<endl;class stude nt: public pers onprivate:i nt bh,score;public:void get() in put();coutvv “請輸入班號和

55、成績 ” ;cin>>bh>>score;void show()display。;coutvv “班號 ” vvbhvvendl; coutvv “成績 ” <<score<<endl;class teacher: public pers on private: stri ng zc,bm; public:void get()in put();coutvv“請輸入職稱和部門” ;cin>>zc»bm;void show()display();coutvv “職稱 ” vvzcvvendl; coutvv “部門 ” vvbm

56、vvendl;int main()stude nt s;teacher t;();();();();return 0;第五章:【】 有關(guān)運算符重載正確的描述是( D )。A C+語言允許在重載運算符時改變運算符的操作個數(shù)B C+語言允許在重載運算符時改變運算符的優(yōu)先級C . C+語言允許在重載運算符時改變運算符的結(jié)合性D C+語言允許在重載運算符時改變運算符原來的功能【】 能用友元函數(shù)重載的運算符是( A )。A+B. = C. >【】 關(guān)于虛函數(shù),正確的描述是( A )。A 構(gòu)造函數(shù)不能是虛函數(shù)B 析構(gòu)函數(shù)不能是虛函數(shù)C 虛函數(shù)可以是友元函數(shù)D 虛函數(shù)可以是靜態(tài)成員函數(shù)【】 派生類中虛

57、函數(shù)原型的( D )。A 函數(shù)類型可以與基類中虛函數(shù)的原型不同B 參數(shù)個數(shù)可以與基類中虛函數(shù)的原型不同C 參數(shù)類型可以與基類中虛函數(shù)的原型不同D 以上都不對【】 如果在基類中將show聲明為不帶返回值的純虛函數(shù),正確的寫法是(C)A. virtual show()=0;B. virtual void show();C. virtual void show()=0;D. void show()=0 virtual;【】下列關(guān)于純虛函數(shù)與抽象類的描述中,錯誤的是( C )。A. 純虛函數(shù)是一種特殊的函數(shù),它允許沒有具體的實現(xiàn)B. 抽象類是指具有純虛函數(shù)的類C. 一個基類的說明中有純虛函數(shù), 該基類的派生類一定不再是抽象類D 抽象類只能作為基類來使用,其純虛函數(shù)的實現(xiàn)由派生類給出】 下面的程序段中虛函數(shù)被重新定義的方法正確嗎為什么class basepublic:virtual int f(int a)=0;class derived: public base public:int f(int a,int b) return a*b; 正確】 寫出下列程序的運行結(jié)果。 #include<iostream> using namespace

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論