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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
#1

Странное с return метода - C++

03.11.2013, 20:23. Просмотров 379. Ответов 12
Метки нет (Все метки)

На первом скриншоте видно, что в некотором методе update() указатель this указывает на.. эм.. что-то страшное, хотя всё должно быть нормально (при этом объект, естественно, присутствует и имеет корректные значения).
На втором скриншоте показан метод (состоит только из return) getParentPosition. Как видно, parent есть и его позиция 90 по Х.
На третьем (1 в изображениях) видно, чему равна переменная, после выполнения getParentPosition.
Что это за магия?

На четвертом скриншоте (3 в миниатюре) ещё частичка магии. Метод update() сцены. Объекты заданы корректно (уверен потому, что они выводятся на экран в нужном количестве без ошибок), но..
0
Миниатюры
Странное с return метода   Странное с return метода   Странное с return метода  

Изображения
 
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2013, 20:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Странное с return метода (C++):

Return type метода - C++
Проблема состоит в том, что при выводе массива, выдод имени работает неправильно. main.cpp #include "stdafx.h" #include...

В чем разница между return и return false/true - C++
Привет всем. Вот подскажите плиз) return; return false; return true; расскажите пожалуйста об етих операторах.. чем они...

Как сделать так, что если файл существует return true, если нет - return false - C++
Здравствуйте, я новичок в программировании. Мой вопрос очень прост: как сделать так, что если файл существует return true если нет return...

Передача метода класса в качестве параметра для метода другого класса - C++
Здравствуйте, Передо мной стоит такая задача. Необходимо разработать механизм, который бы мог прервать любую функцию, при этом абсолютна...

Return - C++
Подскажите пожалуйста, каким образом return ом из функции возвращать 2 значения, напрмер 2 корня квардатного уравнения, найденных в одной...

Return - C++
Всем доброго времени суток! У меня возникла проблема с возвратом значения массива double *c, у меня берётся только одно последнее значение...

12
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,191
03.11.2013, 20:24 #2
Цитата Сообщение от nexen Посмотреть сообщение
На первом скриншоте видно,
не поверишь не видно?
да и листинг бы
0
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
03.11.2013, 20:27  [ТС] #3
ValeryS, кликабельно
0
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,191
03.11.2013, 20:33 #4
О картиночки появились
по поводу первого скриншота
this имеет значение 0
значит ни о каком объекте не может быть и речи
посему кусок кода и фотку с отладчика с брекпоинтом
судя по оформлению у тебя VS если да какая версия?
1
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
03.11.2013, 21:13  [ТС] #5
ValeryS, vs2008. Фишка в том, что Locals не в watch, так что я его не мог добавить сам. Он в Auto. Да и все-таки поля он выдал, но значения у них некорректны
0
Миниатюры
Странное с return метода  
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,191
03.11.2013, 21:18 #6
Цитата Сообщение от nexen Посмотреть сообщение
vs2008.
у меня тоже
скинь проект посмотрю когда время будет
да и проблему опиши
а то по скриншотам трудно понять
1
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
04.11.2013, 06:50  [ТС] #7
ValeryS, оказалось, что это было из-за типа Release проекта. В Debug всё впорядке. Но почему? Конечно, в релизной версии нет большого кол-ва проверок, которые есть в Debug, но разве это должно мешать дебажить его по брекпоинтам? :/
0
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,191
04.11.2013, 09:06 #8
Цитата Сообщение от nexen Посмотреть сообщение
ValeryS, оказалось, что это было из-за типа Release проекта. В Debug всё впорядке. Но почему? Конечно, в релизной версии нет большого кол-ва проверок, которые есть в Debug, но разве это должно мешать дебажить его по брекпоинтам? :/
в релиз версии уже поработал оптимизатор
и твой код изменился, до неузнаваемости и видать твоя точка останова попала на другой участок кода
1
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
04.11.2013, 12:22 #9
Дебажить в релизной версии ... что-то новенькое.
0
Croessmah
04.11.2013, 16:25
  #10

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Дебажить в релизной версии ... что-то новенькое.
Почему? Тут на форуме есть темы с таким подходом )))

0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
04.11.2013, 16:53 #11
Цитата Сообщение от Croessmah Посмотреть сообщение

Не по теме:


Почему? Тут на форуме есть темы с таким подходом )))

Куда смотреть?
0
Croessmah
04.11.2013, 17:03
  #12

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Куда смотреть?
А черт его знает. Но на форуме не одна тема, в которой жалуются мол отладчик не правильно показывает и, как потом выяснялось, это потому что Release режим. В общем проблема не новая уже )))

0
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
06.11.2013, 07:02  [ТС] #13
Croessmah, всё просто. Проверял производительность в релизном режиме, ибо дебаг ни разу не показатель. Ушел спать. На следующее утро забыл. Вот и вся история
0
06.11.2013, 07:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.11.2013, 07:02
Привет! Вот еще темы с ответами:

return - C++
Здравствуйте, форумчане! На сколько мне известно оператор return передаёт управление операционной системе. А можно ли с его помощью...

с++ while return - C++
Задание:Вводится точность e. Вычислить сумму ряда 1-1/3+1/5-1/7.... сумма Вычисления продолжать до тех пор, пока очередное слагаемое не...

return - C++
Вот такой вопрос, как вернуть значения из функции, и чтоб функция main это узнала? если на примере, то во так, допучтим есть функция...

return (n<0) ? -n:n; - C++
Что это означает, return (n&lt;0) ? -n:n; не как не могу понять? Может быть это как if (n&lt;0) return true; else false; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru