c 犯過的錯

2021-09-08 11:41:05 字數 1478 閱讀 9983

1、可訪問性(是否可用)、可見性(作用域內是否存在)

2、volatile(嵌入式用的多

) const

3、友元函式可以訪問類的私有函式 目的 工廠方法 全域性運算子 如 >> << () ||

4、static const 類定義時即可初始化

5、複製建構函式 賦值運算子 目地 複雜型別、指標型別的複製

6、轉換建構函式 乙個引數的建構函式

7、explicit 防止隱式型別

8、 const  在函式前則返回值是

const

的,在函式後,則函式裡的值不可變,如果有修改變數,可以在這個變數的宣告出加

mutable。

9、命名規範 

空行 {} 

就近原則

分號後可以加空格 二元操作符的空格 前後都加,一元操作符可以不用

拆行時 操作符放在行首 *、&

緊靠變數名

10、c++ 用

new分配的在堆,其它的在棧

11、c++ 巨集用」#」號連線

12、++在後面時返回原時值,迴圈的表示式裡有取餘,或類似操作時要注意

13、取余要注意負數問題

14、左值是乙個位置,右值是乙個值

15、有符號數的右移位 不是可移植的

16、變數名與記憶體位置之間的關聯並不是硬體提供,由編譯器實現。硬體仍然通過位址訪問記憶體位置

17、c語言只有傳值方式,所以要用指標的指標

18、指標的初始化用&

操作符,變數的值就是分配給變數的記憶體位置所儲存的數值

19、訪問指標位址所指內容 可以間接訪問,或用解引用指標 *

20、segmentation violateion / memory ****t  指標未初始化 

gpf 

一般保護性異常 

bus error 

匯流排錯誤 指標超邊界

21、訪問記憶體位址 *(int *)100 = 25 

記憶體100

位址處的值設為25

22、狀態碼和錯誤碼分開

23、邏輯上可以處理的異常用錯誤碼,否則丟擲異常

24、初始化的先後順序

25、stl set 一般用來儲存不可變的元素,在

vs2010

以上版本裡 

set的

iterator

都是const的

26、某個數x的後i

位  x%(10^i)

27、鏈式呼叫時要檢查每一項的值是否存在

28、function argument expected 可能是函式名後沒見()

29、無符號數減始終是無符號數,用a-b>0 

來判斷始終為真

30、malformer number near 非英文本元

31、unexpected symbol near 「=」  結果是a=b

後面一大段空白之後又跟著乙個 =b

32、把一行過長的**切割成多行,方便查錯

遞迴錯誤1 Fibonacci數列犯過的錯誤

總結 遞迴寫完以後要盡量帶回去檢驗一下。妄圖直接以遞迴的形式輸出斐波那契數列 include include int fibo int n else int main 這段 是錯誤的,錯誤在printf函式的使用上,如果把3代入遞迴就可以看出問題所在,f fibo 2 fibo 1 此時fibo 2...

犯過的錯誤

1.touch專案 資料夾的子檔案下trigbuilder無法啟動,原因整個路徑有漢字,解決辦法就是刪除 專案 二字 2.想要實現原先沒有image的位置touch後出現,但接受不到pointer事件?原因image預設w h為0,即沒有可以touch的元素,所以接受不到pointer,解決辦法就是...

犯過錯誤的C語言問題

1 memcpy函式 函式原型 void memcpy void dest,void src,unsigned int count 函式原始碼 void memcpy1 void desc,const void src,size t size unsigned char desc1 unsigned...