Vector用法小記

2021-07-02 16:05:16 字數 1224 閱讀 5165

vector<

sprite

*>

sp_vec;

sp_vec.pushback(sp); //和 堆疊 一樣一樣的

int

count = (int)sp_vec.size(); //這裡不是一定要強轉型別,各人習慣,因為看不慣x-code總是報警告

for( auto& e : sp_vec)

//如果是要刪除容器中最後乙個物件的話:

sp_vec.popback(); 

//如果是直接刪除物件:

sp_vec.eraseobject(sp);

//如果是要刪除容器中全部的物件:

sp_vec.clear();

//a 在容器中的任何乙個位置插入物件:

sp_vec.pushback(sp1);  

sp_vec.pushback(sp2);  

//目前的情況是,sp1在容器的第乙個位置,sp2在容器的第二個位置,這時候我們要將sp3放入第乙個位置:

sp_vec.insert(0,sp3);//ok  

//b 查詢容器中的物件:

//1、假設不知道容器中是否有sp3這個精靈,這時候可以這樣:

sp_vec.contains(sp3); //如果有,返回true,無返回false;

//2、已知容器中有sp3這個精靈,想獲得它在容器中的位置:

int pos_int = sp_vec.find(sp3);  

//上面的方法可以獲得sp3的位置,但返回的其實是迭代器的位址,你得到的結果可能是45214等等,如果想獲得正常需要的位置,可以這樣:

int pos_int = sp_vec.find(sp3) - sp_vec.begin(); //ok  

enum用法小記

enum是大家都比較喜歡用的一種結構,有助提供清晰的邏輯,有點技巧能使其更有用。以前經常看到這樣的 不知其最後的none也何用,今天實際碰到時,才知道是多麼美妙的技巧啊。一般的,用int i b 這樣的寫法,肯定是沒問題的,顯然,在這裡 i 等於1,但是,如果我要將int轉換為enum值,典型的情況...

linux expect 用法小記

使用expect實現自動登入的指令碼,網上有很多,可是都沒有乙個明白的說明,初學者一般都是照抄 收藏。可是為什麼要這麼寫卻不知其然。本文用乙個最短的例子說明指令碼的原理。指令碼 如下 usr bin expect set timeout 30 spawn ssh l username 192.168...

pragma用法小記

作為乙個初學cc2530晶元的菜鳥,看到很多實驗例程中都有乙個從未見過的語法 pragma,網上查閱了下,順便做下小小的總結 英語學的不怎麼樣,開始把它看成了 program故百思不得其解,查後才知道錯的有多離譜 pragma p r m n.編譯指示 雜注。pragma 指令是乙個預處理指令,作用...