小人物學(xué)個大習(xí)(111-120)
C++ primer
vector初始化時使用了{(lán)}的形式,但是提供的值又不能用來列表初始化,就要考慮用這樣的值來構(gòu)造vector對象了
vector?v7{10};v7有10個默認(rèn)初始化的元素
vector?v8{10,“hi”};v8有10個值為"hi"的元素可以使用push_back向vector中添加元素
vector?v2;
v2.push_buck(i);最好不要在定義vector對象的時候設(shè)定其大小,可能會是的性能更差,除非所有的元素值都一樣
如果循環(huán)體內(nèi)部包含有向vector對象添加元素的語句,則不能使用范圍for循環(huán)
vector和string對象有類似性
1.可以通過元素位置訪問元素對象v[]
2.vector也有empty和size兩個成員
3.相等于比較關(guān)系也與string相同vector對象的索引
vector?scores(11,0);
unsigned grade;
while (cin>>grade)
{
if(grade<=100)
++scores[grade/10];
}vector對象的下標(biāo)運(yùn)算符可用于訪問已存在的元素,而不能用于添加元素
可以使用迭代器來間接訪問對象,iterator
有迭代器的類型同時擁有返回迭代器的成員,如begin(),end()
auto b=v.begin(),e=v.end();
如果容器為空,則begin和end返回的是同一個迭代器*iter返回迭代器所指的元素的引用
iter->mem解引用iter并獲取該元素名為mem的成員,等價于(*iter).mem
怎么說呢,又走了一步。
2023年7月19日
標(biāo)簽: