Показать сообщение отдельно

std::list поиск
  #1  
Старый 06.02.2008, 00:00
fucker"ok
Познавший АНТИЧАТ
Регистрация: 21.11.2004
Сообщений: 1,137
С нами: 11298566

Репутация: 761


По умолчанию std::list поиск

Нужно избавиться от одной лишней операции в коде, дабы её 100% можно заменить, но вот с указателями и тп я не дружу
PHP код:
#include <iostream>
#include <list>
#include <string>
using namespace std;

struct Someshit
{
        
string name;
        
int id;
};
int main(int argc, char *argv[])
{
        
Someshit some, tmp;
        list <
Someshit> somelist;
        
some.name="aa";
        
somelist.push_back(some);
        
some.name="bb";
        
somelist.push_back(some);
        
some.name="cc";
        
somelist.push_back(some);
        
//и подобного много раз
        
list <Someshit>::iterator listpos;
        
int i = 0;
        for (
listpos = somelist.begin(); listpos != somelist.end(); listpos++)
        {
                
tmp = *listpos; //НЕ НУЖНОЕ И не желательное действие
                
i++;
                if (
tmp.name == "bb") cout << i << " BB найдено \n"; //а вот это нужно как-то сделать через listpos
                
if (tmp.name[0] == 'c') cout << i << " первая C найдена \n"; // и это тоже
        
}
        return 
0;

} 
Так-вот от копирования в переменную tmp мне и нужно избавиться, тоесть я хочу добираться до элементов структуры через lispos, дабы в дальнейшем я мог их сравнивать.

Последний раз редактировалось fucker"ok; 06.02.2008 в 00:03..
 
Ответить с цитированием