freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

cc程序員應(yīng)聘常見面試題-資料下載頁(yè)

2025-03-24 04:46本頁(yè)面
  

【正文】 ata,當(dāng)類中包括指針類成員變量時(shí),一定要重載其拷貝構(gòu)造函數(shù)、賦值函數(shù)和析構(gòu)函數(shù),這既是對(duì)C++程序員的基本要求,也是《Effective C++》中特別強(qiáng)調(diào)的條款。  仔細(xì)學(xué)習(xí)這個(gè)類,特別注意加注釋的得分點(diǎn)和加分點(diǎn)的意義,這樣就具備了60%以上的C++基本功!  試題8:請(qǐng)說出static和const關(guān)鍵字盡可能多的作用  解答:  static關(guān)鍵字至少有下列n個(gè)作用: ?。?)函數(shù)體內(nèi)static變量的作用范圍為該函數(shù)體,不同于auto變量,該變量的內(nèi)存只被分配一次,因此其值在下次調(diào)用時(shí)仍維持上次的值;  (2)在模塊內(nèi)的static全局變量可以被模塊內(nèi)所用函數(shù)訪問,但不能被模塊外其它函數(shù)訪問; ?。?)在模塊內(nèi)的static函數(shù)只可被這一模塊內(nèi)的其它函數(shù)調(diào)用,這個(gè)函數(shù)的使用范圍被限制在聲明它的模塊內(nèi); ?。?)在類中的static成員變量屬于整個(gè)類所擁有,對(duì)類的所有對(duì)象只有一份拷貝; ?。?)在類中的static成員函數(shù)屬于整個(gè)類所擁有,這個(gè)函數(shù)不接收this指針,因而只能訪問類的static成員變量?! onst關(guān)鍵字至少有下列n個(gè)作用:  (1)欲阻止一個(gè)變量被改變,可以使用const關(guān)鍵字。在定義該const變量時(shí),通常需要對(duì)它進(jìn)行初始化,因?yàn)橐院缶蜎]有機(jī)會(huì)再去改變它了; ?。?)對(duì)指針來說,可以指定指針本身為const,也可以指定指針?biāo)傅臄?shù)據(jù)為const,或二者同時(shí)指定為const; ?。?)在一個(gè)函數(shù)聲明中,const可以修飾形參,表明它是一個(gè)輸入?yún)?shù),在函數(shù)內(nèi)部不能改變其值;  (4)對(duì)于類的成員函數(shù),若指定其為const類型,則表明其是一個(gè)常函數(shù),不能修改類的成員變量; ?。?)對(duì)于類的成員函數(shù),有時(shí)候必須指定其返回值為const類型,以使得其返回值不為“左值”。例如:const classA operator*(const classAamp。 a1,const classAamp。 a2)?! perator*的返回結(jié)果必須是一個(gè)const對(duì)象。如果不是,這樣的變態(tài)代碼也不會(huì)編譯出錯(cuò):classA a, b, c。(a * b) = c。 // 對(duì)a*b的結(jié)果賦值  操作(a * b) = c顯然不符合編程者的初衷,也沒有任何意義。  剖析:  驚訝嗎?小小的static和const居然有這么多功能,我們能回答幾個(gè)?如果只能回答1~2個(gè),那還真得閉關(guān)再好好修煉修煉?! ∵@個(gè)題可以考查面試者對(duì)程序設(shè)計(jì)知識(shí)的掌握程度是初級(jí)、中級(jí)還是比較深入,沒有一定的知識(shí)廣度和深度,不可能對(duì)這個(gè)問題給出全面的解答。大多數(shù)人只能回答出static和const關(guān)鍵字的部分功能?!   ≡囶}1:請(qǐng)寫一個(gè)C函數(shù),若處理器是Big_endian的,則返回0;若是Little_endian的,則返回1  解答:int checkCPU(){ {  union w  {    int a?!  har b。  } c。   = 1?! eturn ( == 1)。 }}  剖析:  嵌入式系統(tǒng)開發(fā)者應(yīng)該對(duì)Littleendian和Bigendian模式非常了解。采用Littleendian模式的CPU對(duì)操作數(shù)的存放方式是從低字節(jié)到高字節(jié),而Bigendian模式對(duì)操作數(shù)的存放方式是從高字節(jié)到低字節(jié)。例如,16bit寬的數(shù)0x1234在Littleendian模式CPU內(nèi)存中的存放方式(假設(shè)從地址0x4000開始存放)為:內(nèi)存地址存放內(nèi)容0x40000x340x40010x12  而在Bigendian模式CPU內(nèi)存中的存放方式則為:內(nèi)存地址存放內(nèi)容0x40000x120x40010x34  32bit寬的數(shù)0x12345678在Littleendian模式CPU內(nèi)存中的存放方式(假設(shè)從地址0x4000開始存放)為:內(nèi)存地址存放內(nèi)容0x40000x780x40010x560x40020x340x40030x12  而在Bigendian模式CPU內(nèi)存中的存放方式則為:內(nèi)存地址存放內(nèi)容0x40000x120x40010x340x40020x560x40030x78  聯(lián)合體union的存放順序是所有成員都從低地址開始存放,面試者的解答利用該特性,輕松地獲得了CPU對(duì)內(nèi)存采用Littleendian還是Bigendian模式讀寫。如果誰(shuí)能當(dāng)場(chǎng)給出這個(gè)解答,那簡(jiǎn)直就是一個(gè)天才的程序員?! ≡囶}2:寫一個(gè)函數(shù)返回1+2+3+…+n的值(假定結(jié)果不會(huì)超過長(zhǎng)整型變量的范圍)   解答:int Sum( int n ){  return ( (long)1 + n) * n / 2?! ?/或return (1l + n) * n / 2。}  剖析:   對(duì)于這個(gè)題,只能說,也許最簡(jiǎn)單的答案就是最好的答案。下面的解答,或者基于下面的解答思路去優(yōu)化,不管怎么“折騰”,其效率也不可能與直接return ( 1 l + n ) * n / 2相比! int Sum( int n ){ long sum = 0?!or( int i=1。 i=n。 i++ ) {  sum += i。 } return sum。}   所以程序員們需要敏感地將數(shù)學(xué)等知識(shí)用在程序設(shè)計(jì)中。22 / 22
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1