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

Функция не видит выделенной памяти под глобальные переменные - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Написать программу (сумму первых n целых положительных четных чисел), объясните, что значит каждая строка! http://www.cyberforum.ru/cpp-beginners/thread788687.html
Написать программу, которая вычисляет сумму первых n целых положительных четных чисел. Количество суммируемых чисел должно вводиться во время работы программы. Вычисление суммы четных положительных чисел. Введите количество суммируемых чисел и нажмите <Enter> -> 12 Сумма первых 12 положительных четных чисел равна 156
C++ Использование функций при работе с двумерными массивами Дана прямоугольная вещественная матрица . Обнулить все четные столбцы и нечетные строки. В полученной матрице отсортировать по возрастанию каждую строку, оставляя нули на своих местах. http://www.cyberforum.ru/cpp-beginners/thread788680.html
C++ обращения к указателям
Написать обращения к указателям в глобальной,локальной и охватывающей сетях.
Открытие и закрытие файлов C++
Доброго времени суток! Подскажите пожалуйста: если файл открыть функций fopen , записать тута что-то и при закрытии функцией fclose, данная функция вернет ошибку, то как удалить данный файл?
C++ Поменять местами четные и нечетные символы слова http://www.cyberforum.ru/cpp-beginners/thread788635.html
Как поменять местами четные и нечетные символы слова? Заранее спс!
C++ Программирование линейных алгоритмов с использованием функций инициализации set() и вывода результатов print() Пользовательский класс должен содержать необходимые элементы-данные, метод установки их начальных значений: Void set(double X, …); метод печати: Void print(void); метод, решающий поставленную задачу: Void Run(void); Код методов – вне пространства определения класса. Программа должна включать в себя статический и динамический способы создания объектов, и для каждого объекта использовать... подробнее

Показать сообщение отдельно
EmpthyNick
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 5
17.02.2013, 21:56     Функция не видит выделенной памяти под глобальные переменные
При решении задачи с алгоритмом поиска в глубину возникла проблема: описание переменных происходит над п/п алгоритма, выделение памяти под них происходит в программе, а при вызове п/п она "не видит" выделенной памяти, из за чего обращается к несуществующему элементу, и происходит ошибка:
vector<bool> iterator not derefencable.

Что с этим можно сделать?


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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include "stdafx.h"
#include<iostream>
#include<vector>
#include<fstream>
using namespace std;
 
int n;
vector<bool> used;
vector<int> enter_time;
vector<int> exit_time;
vector<vector<int> > gr;
int enterT = 0;
int exitT = 0;
 
 
void dfs(int r)
{
    used[r] = true;
    enter_time[r] = enterT++;
    for (int i = 0; i < gr[r].size(); i ++)
        if (!used[gr[r][i]])
            dfs(gr[r][i]);
    exit_time[r] = exitT++;
}
void main()
{
    ifstream inputF("D:/input.txt");
    //int n;
    inputF >> n;
    cout << n;
    cout << "    ";
 
    // Ввод и преобразование данных
    while (!inputF.eof())
    {
        vector<int> temp;
        int k;
        inputF >> k;
        for (int j = 0; j < k; j++)
        {
            int t;
            inputF >> t;
            temp.push_back(t);
        }
        gr.push_back(temp);
    }
    // Запуск dfs-п/п
    vector<int> enter_time(n);
    vector<int> exit_time(n);
    dfs(0);
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru