如果每次執行環境只能執行一條語句,但是有許多語句需要執行,那麼用花括號{}括起來,構成語句塊;
識別符號的作用域有區域性作用域、函式原型作用域、類作用域、命名空間作用域;
用字串"schedule"初始化乙個字元陣列的初始化語句;
char s = ;
char s = "schedule";
char s = ;
哪幾個運算子必須過載為成員函式:賦值運算子"="、取下標運算子""、成員訪問運算子"->"和函式運算子"()"
c++規定else與它最近的尚未匹配的if匹配,有時可能縮排正確,而匹配的if確不如本意。例如:
if(x > 0)
if(x < 3)
/****/
else
/****/
其中else匹配的則是"x<3"的if,在x>=3的時候進入else,而非x<=0時進入else。
函式模板本身在編譯時不會生成任何目標**,只有由模板生成的例項會生成目標**;函式過載會生成目標**;
被多個原始檔引用的函式模板,應當連同函式體一同放在標頭檔案中,不能像普通函式那樣只將宣告放在標頭檔案中;函式過載的時候可以將宣告和定義分別放在標頭檔案和原始檔中;
函式指標只能指向該模板的例項,不能指向模板本身;函式指標可以指向過載的函式;
從函式模板產生的相關函式都是同名的,編譯器用過載的方法呼叫相應的函式,函式模板本身也可以用多種方式過載。
兩者在宣告的時候形式不同,如下所示:
virtual void fun(); // 虛函式
virtual void fun() = 0;// 純虛函式
同時,純虛函式根本沒有函式體,但是基類中仍然允許對虛函式給出實現,而即使給出實現,也必須由派生類覆蓋,否則無法例項化;對比之下,虛函式是有函式體的,只是函式體可以為空。
兩者的作用有所不同。帶有純虛函式的類是抽象類,其主要作用是通過它為乙個類族建立乙個公共的介面,使他們能夠更有效地發揮多型特性,抽象類宣告了乙個類族派生類的共同介面,而介面的完整實現,即純虛函式的函式體,需要派生類自己定義;虛函式的主要作用是實現執行時多型,通過基類指標或引用與派生類物件建立聯絡,就可以使同樣的訊息對於不同派生類的不同物件產生不同的行為。
介面定義並標準化了客戶使用該類功能的使用方法,而這些功能的具體實現對於客戶而言是不可見的,達到了資訊隱藏,使得客戶不會寫出依賴於類的實現細節的客戶**。同時,程式維護更加方便,只要類的介面不變,類的實現的改變不會影響客戶。
cstring包含c++對c風格字串的相關函式的宣告,string中是c++中string類的相關宣告,cctype中是c風格字元分類的一些函式,sstream中是c++字串流的相關函式。
2011相關概念題
資料型別是一組性質相同的具有一定範圍的值集合以及定義在這個值集合上的一組操作。資料型別既有內部資料型別,如int char float bool等,也有自定義外部資料型別,如列舉型別 結構型別 聯合型別 類型別等。adt即abstract data type 抽象資料型別 是基於已有型別組合而組成的...
SDOI2017 相關分析
題目傳送門 看了 loj 300多份 似乎我是唯二寫分塊的?剛開始感覺線段樹比較難寫,就開始碼分塊了。現在知道為什麼沒人寫分塊了 很容易想到將式子進行拆分,然後維護各種東西 操作1 a frac x i y i x i overline overline y i overline overline ...
GRUB2相關概念
gnu grub,簡稱 grub 是乙個來自gnu專案的啟動引導程式。grub是多啟動規範的實現,它允許使用者可以在計算機內同時擁有多個作業系統,並在計算機啟動時選擇希望執行的作業系統。grub可用於選擇作業系統分割槽上的不同核心,也可用於向這些核心傳遞啟動引數。gnu grub的前身為grand ...