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

Visual c++. Проблемы с отладкой - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Действие с файлом в зависимости от его типа http://www.cyberforum.ru/cpp-beginners/thread895713.html
В общем препод сказал написать программу к понедельнику, мол напишешь - поставлю зачет :D Суть программы с его слов: "Я задаю любой путь к файлу, если этот .txt файл, на экране должно появиться...
C++ Потоки и их влияние на скорость Есть необходимость использовать несколько потоков, которые будут в цикле обрабатывать значения. Как будет быстрее, разбить задачу на несколько частей и каждую поместить в поток (получится примерно 10... http://www.cyberforum.ru/cpp-beginners/thread895709.html
getline(cin, ); C++
Программа создаёт текстовый документ в который записывает название, автора и кол-во проданных экземпляров книги. Вот только возникла проблема:( Записывается вся информация, кроме названия. Не могу...
C++ Непонятная ошибка в коде
Здравствуйте. Пытаюсь написать функцию, которая будет вытаскивать из текста в файле числа. Реализовываю через их запись в буфер num с последующим использованием atoi. Столкнулся с тем, что программа...
C++ Олимпиадная задача Сумма простых http://www.cyberforum.ru/cpp-beginners/thread895700.html
наприме мы вводим размер массива 3 потом сколько чисел надо сложить 2 а потом массив 6 5 7 и вы водитьса другой массив например 6+5=11 5+7=12 6+7=13 массив (11 12 13) вот 6+5 это он складывает 2...
C++ Не работает программа Сделать программу для введения с клавиатуры текста из 50 символов и вывода на экран кол-ва букв, которые входят в этот текст по одному разу. Я написал код, но он не работает. #include... подробнее

Показать сообщение отдельно
Zarc
0 / 0 / 0
Регистрация: 01.02.2012
Сообщений: 11

Visual c++. Проблемы с отладкой - C++

09.06.2013, 16:26. Просмотров 733. Ответов 2
Метки (Все метки)

Здравствуйте. Почему при отладке студия иногда показывает не все локальные переменные? Например, при отладке в 10-ой студии следующей функции в окне "Локальные" не отображаются указатели s1, s2, vor_s1, vor_s2, splitChain.

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
Voronoi::Voronoi(TriagActorsT &s)
{
#pragma region Trivial cases
    //ends of recursion, trivial cases
    if (s.size() < 1)
    {
        throw -1;
    }
    if (s.size() == 1)
    {
        BuildVoronoiForOnePoint(s);
        return;
    }
    if (s.size() == 2)
    {
        BuildVoronoiForTwoPoints(s);
        return;
    }
#pragma endregion
 
    size_t halfSize = s.size() / 2;
    TriagActorsT *s1 = new TriagActorsT(s.begin(), s.begin() + halfSize);
    TriagActorsT *s2 = new TriagActorsT(s.begin() + halfSize, s.end());
 
    Voronoi *vor_s1 = new Voronoi(*s1);
    Voronoi *vor_s2 = new Voronoi(*s2);
 
    ConvHullVertexT lowerPL, lowerPR, upperPL, upperPR;
    LowerCommonSupport(*vor_s1, *vor_s2, lowerPL, lowerPR);
    UpperCommonSupport(*vor_s1, *vor_s2, upperPL, upperPR);
 
    DCEL *splitChain = BuildSplitChain(*vor_s1, *vor_s2, upperPL, upperPR, lowerPL, lowerPR);
        
    MergeVor(*vor_s1, *vor_s2, upperPL, upperPR, lowerPL, lowerPR, *splitChain->edges.begin());
}
Хотя, если добавить
C++
1
DCEL test = *splitChain;
после строки
C++
1
DCEL *splitChain = BuildSplitChain(*vor_s1, *vor_s2, upperPL, upperPR, lowerPL, lowerPR);
то в "локальных" появляется и указатель splitChain и переменная test.

А при отладке этой функции
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void Voronoi::CoordinateVorEdges(EdgeNode *chainEdge, EdgeNode *prevVorEdge, 
    DCEL_EdgesT::iterator prevChainEdgeIter, VorOrient prevEdgeOrient)
{
    if (prevEdgeOrient == VorOrient::RIGHT)
    {
        chainEdge->p1 = prevVorEdge;
        (*prevChainEdgeIter)->p2 = chainEdge;
    }
    else
    {
        chainEdge->p1 = *prevChainEdgeIter;
        CoordinatePrevLeftVorEdge(chainEdge, prevVorEdge);
    }
}
отладчик не хочет заходить в метод CoordinatePrevLeftVorEdge.

C++
1
2
3
4
5
6
7
8
if (*crntChainEdge->vBegin == *prevVorEdge->vEnd)
    {
        prevVorEdge->p2 = crntChainEdge;
    }
    else
    {
        prevVorEdge->p1 = crntChainEdge;
    }
А в 12-ой студии я вообще не могу посмотреть значение ни у одной переменной во время отладки с++ кода (c# - пожалуйста, на ура)! Окошко над объектом всплывает, а "плюсика", чтоб посмотреть его структуру, нет . Именно поэтому проекты с++ пишу всё ещё в десятке, а хотелось бы в 12-ке.

В общем, помогите, пожалуйста. А то погряз в дебаге, и эти формальности просто бесят, не должно же так быть!

Добавлено через 18 часов 18 минут
И что, никому нечего сказать? Ни у кого такого не было?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru