1、在全域性作用域定義在非const變數在整個程式中都能訪問。而全域性作用域定義的const變數不能被其他檔案訪問,除非通過指定const變數為extern:
extern const intx=fcn();
extern const intx;
for(inti=0;i
非const變數預設為extern,要使const變數能夠在別的檔案中訪問,必須顯式地指定為extern。
2、 引用是一種復合型別,復合型別是指用其他型別定義的型別。引用必須用與該引用同型別的物件初始化。引用是一種別名,作用在引用上的所有操作事實上都是作用在該引用繫結的物件上。
3、 typedef可以用來定義型別的同義詞,如typedef double wages。typedef通常有以下三種目的:為了隱藏特定型別的實現,強調使用型別的目的;簡化複雜的型別定義、允許一種型別用於多種目的,使得每次使用該型別的目的明確。
每個enum都定義了一種新的型別。列舉型別的物件的初始化或賦值只能通過其列舉成員或同一列舉型別的其他物件。
5、 struct和class定義類的唯一差別在於預設訪問級別,struct的成員預設為public,而class為private。
6、 由於標頭檔案包含在多個原始檔之中,所以不應該含有變數或者函式的定義,但是有三個例外。標頭檔案可以定義類、值在編譯時就已知的const物件和inline函式。這些實體可以在多個原始檔中定義,只要每個原始檔中的定義是相同的。
7、 為了避免多重包含導致的重複定義,我們需要引入一些額外的預處理器設施。
#ifndef salesitem_h
#define salesitem_h
//definition
#endif
c 的基本語言知識(二)
1 運算子 c 包含了c語言的所有運算子,並且在其基礎上增加了一下幾種新的運算子 1 作用域運算子 2 new 動態分配記憶體單元運算子 3 delete 刪除動態分配記憶體單元運算子 4 和 成員指標選擇運算子 需要注意的是,不同的運算子制定運算元的個數並不相同 2 雙目運算子 數 算符 3 三目...
GO語言學習(二) 基本語法
在 go 程式中,一行代表乙個語句結束。每個語句不需要像 c 家族中的其它語言一樣以分號 結尾,因為這些工作都將由 go 編譯器自動完成。如果你打算將多個語句寫在同一行,它們則必須使用 人為區分,但在實際開發中我們並不鼓勵這種做法。以下為兩個語句 fmt.println hello,alex fmt...
C語言基本概念 檔案(二)
怎麼讀寫檔案 檔案的定位 檔案檢測函式 c程式把檔案分為ascii檔案和二進位制檔案。ascii檔案是文字檔案。在c語言中,檔案是乙個位元組流或二進位製流,也就是說,對於輸入輸出的資料都按 資料流 的形式處理。檔案輸入輸出方式也稱訪問方式,c語言中,檔案有兩種訪問方式 順序訪問和直接訪問 格式fil...