寫一個公司管理系統:
思路:
將公司所有員工定義成一個類staff,員工不同職位帶來的不同權限通過分別定義不同的職位類來實現,職位類public繼承員工類,權限通過職位類的public函數來實現。
登陸,從數據庫中加載數據,將數據寫入數據庫中,通過單獨定義函數來實現,C語言中的方式就可以,注意使用vector代替鏈表。
難點:
1.STL容器的使用
是一個可以替換C語言鏈表的神器,但是還有一些不一樣,這種不一樣在這個項目中坑死我了
a.鏈表中,除了next外還有很多可以添加的數據類型,STL,以vector為例,里面的數據類型只能有一種,但是呢,這種數據類型可以是自己定義的,也就是說,可以自己寫一個類做為數據類型放進去
b.鏈表傳遞的時候,只需傳一個頭節點即可,但是vector在函數之間傳遞的時候,沒有頭節點可以用,可以傳它的指針,或者引用
2.mysql中的數據類型
如果mysql中某一table中有數據為空,當迭代器訪問到這個為空的數據時,會出現段錯誤,如果可以的話,盡量給每個數據都賦予默認值。
有意思的點:
1.protected或者private中的對象,即便是在public繼承中,也不大方便直接訪問,如果要查看其中對象的值,或者更改對象的值,還是在public中定義函數來實現好了。
2.mysql中res集返回的元素都是char * 型,如果要把用這些值,難免要進行類型轉換,如atoi,atof等