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

Map/set iterator not dereferencable - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить, можно ли из букв первого слова получить второе http://www.cyberforum.ru/cpp-beginners/thread1145636.html
Даны два слова. Определить, можно ли из букв первого из них получить второе. повторяющиеся буквы второго слова могут в первом слове не повторяться; программа на паскале: uses crt; var...
C++ Выключение компьютера Подскажите, как на c# или с++ программно, спустя n минут, после запуска этой программы, выключался компьютер. n даётся на выбор:15,30,60 минут, или вводится с клавиатуры. http://www.cyberforum.ru/cpp-beginners/thread1145628.html
C++ Замена рекурсии работой с собственным стеком
Есть прога по обработке списка, в лабораторной работе нужно было заменить рекурсию на работу с собственным стеком, препод дал код, но проблема в том что код не работает, промучавшись длительное...
C++ Как из файла прочитать размерность матрицы и её содержимое?
Помогите пожалуйста, ничего не нашёл! Как из файла прочитать размерность матрицы и её содержимое?
C++ Необычная форма http://www.cyberforum.ru/cpp-beginners/thread1145596.html
Появилась идея реализовать необычную форму с кучей анимации на прозрачном фоне(то есть если я например нахожусь на рабочем столе > со всех углов виде анимации стекаются символы и в центре...
C++ Создать новый класс аукцион Помогите пожалуйста! 1. Создать запись для хранения следующей информации: – название предмета, выставленного на аукцион, – код аукциониста, – стартовая цена, – цена продажи, – дата продажи. 2.... подробнее

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

Map/set iterator not dereferencable - C++

11.04.2014, 19:08. Просмотров 933. Ответов 5
Метки (Все метки)

Есть два класса, первый:

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
class AnimationManager
{
    public:
        String currentAim;
        std::map<String, Animation> animList;
    
 
        AnimationManager()
        {};
        
            void create(String name, Texture &t, int x, int y, int w, int h, int count, float Speed, int step)
            {
                
                animList.emplace(name, Animation(t,x,y,w,h,count,Speed,step));
                currentAim=name;
                    
 
            };
 
 
 
            void draw (RenderWindow &window, int x=0, int y=0)
            {
                 animList.find(currentAim)->second.sprite.setPosition(x,y);
                window.draw( animList.find(currentAim)->second.sprite);
            }
 
            void set(String name) {currentAim = name;}
            void flip (bool b) {animList.find(currentAim)->second.flip = b;}
            void tick (float time) {animList.find(currentAim)->second.tick(time);}
            void pause () {animList.find(currentAim)->second.isPlaying=false;}
            void play () {animList.find(currentAim)->second.isPlaying=true;}
};

И второй, в котором есть следующая функция:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 void update(float time)
 { 
  
  if (STATE==stay) anim.set("stay");
  if (STATE==walk) anim.set("walk");
  if (STATE==jump) anim.set("jump");
  if (STATE==duck) anim.set("duck");
 [B] if (STATE==climb) {anim.set("climb"); anim.pause(); if (dy!=0) anim.play(); if (!onLadder) STATE=stay;} [/B]
  if (shoot) { anim.set("shoot"); 
  if (STATE==walk) anim.set("shootandwalk");}
[B]  if (dir) anim.flip(dir);[/B]
  
  
  x += dx * time; 
  
  dy+=0.0005*time;
  
  y += dy*time;  
 
 [B] anim.tick(time);[/B]

Если я убираю строчки, выделенные жирным шрифтом, то ошибка пропадает, если же оставляю, то выводится следующие сообщение:map/set iterator not dereferencable. Возможно, я недопонимаю как работают итераторы. Как мне быть?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru