2016.12.3 - 2016.12.4
完成乙個程式的設計工作分三步寫出乙個好程式,最關鍵的就是去設計這些類
如何用c++寫出優秀的程式第三章
一些關於string操作 p68
string s;
//裁剪字串
s.substr(a,b); // a:字串裡乙個下標的位置; b:所需字串長度
//替換字串
s.replace(a,b,"string");// a:字串裡乙個下標的位置; b:所需字串長度; string: 替換成的內容
//列印c風格的字串
printf("%s\n", s.c_str());
//讀取一行
getline(cin,s);
//新增結尾符
s+="\n";
一些關於vector的事項 p71
vector
name(100); // 100個元素的向量
vector
name[100]; //100個空間量的向量
vector不支援超出範圍的監測
int i = vector
name[101];//隨機賦值給i
另: vector與list區別
vector 順序表(陣列)
能高效進行隨機訪問,時間複雜度為o(1)
插入與刪除時記憶體塊拷貝,時間複雜度為o(n)
vector::iterator支援「+」,「+=」,「<」等操作符
list 雙向鍊錶
於vector的優劣勢相反
list::iterator則不支援「+」、「+=」、「<」等
迭代器型別任何特定的的迭代器也都是某個型別的物件,但是可能差異巨大, 而且都是為某項特定工作專門量身打造的
ps: 經典迭代器**
#include
#include
using
namespace
std;
int main()
}
關於標準庫的忠告一些有用的文章
《C 高階程式設計》讀書筆記(一)
1,string型別的特殊性 string型別是乙個引用型別,因此當把義字串變數賦予給另乙個字串是,會得到對記憶體中同乙個字串的兩個引用。但是,string與引用型別的常見行為有一些區別。例如,字串是不可改變的。改變其中乙個字串,就會建立乙個全新的string物件,而另乙個字串不發生任何變化。str...
《c程式語言》讀書筆記(一)1 4
自己的一些思考 1 printf和getchar的區別 scanf printf 可以輸入輸出各種型別的變數,比如int float char,而且同時輸入 輸出多個也可以 如scanf d,d a,b getchar putchar 只能輸入輸出char型別的變數,而且只能同時輸入輸出乙個字元 s...
《c程式語言》讀書筆記
舉例如下 char a 10 1 定義的時候直接用字串賦值 char a 10 hello 注意 不能先定義再給它賦值,如 char a 10 a 10 hello 這樣是錯誤的!2 對陣列中字元逐個賦值 char a 10 3 利用strcpy char a 10 strcpy a,hello 易...