Форум программистов, компьютерный форум CyberForum.ru

Как ведет себя вектор при добавлении новых элементов пушбеком? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Классы-посредники http://www.cyberforum.ru/cpp-beginners/thread390384.html
Читая Дейтла, дошел до теемы классы-посредники, назначение которых скрыть не только реализацию, но и интерфейс класса (в том смысле, как я понял, чтобы пользователь класса просто не видел физически заголовочный файл класса). Так ли уж ценна эта идея, искусственно накручивания скрытия всего и вся?
C++ В функция с переменным числом параметров. В функцию с переменным числом параметров поступают слова, конец списка - указатель NULL. Найти и вывести все слова, которые читаются одинаково сначала в конец и с конца в начало. с чего начать? http://www.cyberforum.ru/cpp-beginners/thread390371.html
C++ Подскажите с записью на С++
задача: "Старшую тетраду каждого байта числа заменить результатом операции «стрелка Пирса» старшей и младшей тетрад, а младшую тетраду – результатом операции «штрих Шеффера» старшей и младшей тетрад исходного байта" как записать на С++?? стрелку Пирса и штрих Шеффера
C++ Написал прогу по стеку, но при выводе содержимого - выводит только последний добавленный
Вот собственно сам код, подскажите если что не так. Заранее спасибо! #include <iostream> #include <stack> using namespace std; class Node { public:
C++ Расписать каждую строчку . http://www.cyberforum.ru/cpp-beginners/thread390348.html
Распишите каждую строчку.завтра защищать а я не понимаю чо это ) что делае и т.д 1) Использование компилятора c последующим подключением компановщика и созданием исполняемого файла a.exe H:\laba3>bcc32 -I.\include a.cpp b.cpp c.cpp Borland C++ 5.6 for Win32 Copyright (c) 1993, 2002 Borland a.cpp: b.cpp: c.cpp:
C++ поразрядные операции помогите пожалуйста решить следущую задачу: даны два int-числа: N1 = АBCD и N2 = EFGH, где AB…GH – 16-ричные цифры, ПОп – Поразрядная Операция Получить цифру X как результат выражения: X = A And B Xor C, и записать ее в N2: EFXGH. или хотя бы идею как это реализовать. заранее спасибо подробнее

Показать сообщение отдельно
Svinina
5 / 5 / 0
Регистрация: 28.11.2010
Сообщений: 81

Как ведет себя вектор при добавлении новых элементов пушбеком? - C++

24.11.2011, 00:17. Просмотров 525. Ответов 7
Метки (Все метки)

Товарищи, ниже приведены несколько отрывков из моей программы. Интересует вопрос: почему не выполняется if в 23 строке?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
int gc_node::update(gc_node *master, gc_node *slave)
{
    std::vector<gc_edge *>::iterator ei;
    std::vector<gc_edge *>::iterator is;
    std::vector<gc_edge *>::iterator im;
    int dist;
    ei = nvec.begin();
 
    for(i = 0; ei != nvec.end(); ++ei, ++i)
    {
        if((*ei)->getnode() == slave)
        {
            is = ei;
            dist = i;
        }
    }
        
    setneighbour(master, (*is)->getweight());
 
    im = is;
    is = nvec.begin();
    advance(is, dist);
    if(im == is) qDebug() << "ololo";
    delete *is;
    nvec.erase(is);
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class gc_node
{
.........
    std::vector<gc_edge *> nvec;
public:
    void setneighbour(gc_node *neighbour, double edge_weight);
    int update(gc_node *master, gc_node *slave);
........
};
 
void gc_node::setneighbour(gc_node *neighbour, double edge_weight)
{
    gc_edge *temp_edge = new gc_edge(neighbour, edge_weight);
    nvec.push_back(temp_edge);
}
Ведь в данном коде я просто добавляю элемент в конец вектора, почему указанные мной итераторы не равны?

Добавлено через 4 минуты
Если еще нужна какая-то информация по этому коду, готов предоставить (целиком полторы тысячи строк решил не кидать=))

Добавлено через 4 минуты
Да, забыл добавить, что закоментив 18 строку, иф выполняется.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru